SliverWorkspace Installation Guide
1. Preparation
Server environment hardware requirements, recommended configuration:
CPU: no lower than Xeon E3, 4 cores / 8 threads
Memory: no less than 10 GB of available memory
Disk: at least 50 GB of available space (for storing analysis results)
Network requirements:
SliverWorkspace must be deployed in a stable network environment.
The installation process requires internet access to install Docker and download Docker image files.
Firewall:
SliverWorkspace uses the following ports at runtime (avoid conflicts with existing ports during installation):
Port Notes 80 Nginx Web service 443 Nginx Web service 8443 Java backend service 10443 WebSocket persistent connection 5433 postgreSQL database service (changed to 5433 in version 2.7 to reduce the probability of conflicts with databases already on the server)
2. Software Installation
SliverWorkspace deployment is based on Docker virtualization, enabling fast installation, deployment, and migration. The package is an all-in-one bundle containing 4 container images (frontend / backend / database / server) plus the deployment scripts, and installs to /opt/SliverWorkspace by default.
2.1 Choosing a package
All three formats carry identical content — pick the one that matches your server distribution:
| Package | Applies to | Install command |
|---|---|---|
| sliverworkspace-community.deb | Ubuntu 18.04 – 26.04, Debian 12 | sudo apt-get install ./sliverworkspace-community.deb |
| sliverworkspace-community.rpm | RHEL / CentOS 7 and later, CentOS Stream 8/9/10, Rocky Linux, AlmaLinux | sudo yum install ./sliverworkspace-community.rpm |
| sliverworkspace-community.tar.gz | Any x86_64 Linux | extract, then bash setup.bin (see 2.4) |
Always use
yum install. CentOS 7 ships onlyyum(there is nodnfcommand); on CentOS 8 and lateryumis a symlink todnf, so one command covers every RPM-based distribution.
./means the current directory —cdinto the directory holding the package first, or pass an absolute path such assudo yum install /root/sliverworkspace-community.rpm.
Recommended Linux distributions for deployment: Ubuntu 18.04/20.04/22.04/24.04/26.04 Server; Debian 12; CentOS 7/8, CentOS Stream 9, Rocky Linux 9/10, AlmaLinux 9.
Not compatible with CentOS 6.10 — the Docker version available on that release is too old.
Not compatible with Windows 10 or macOS. On these systems Docker runs inside a virtual machine, which differs significantly from Linux.
Not compatible with the Windows WSL Linux environment.
2.2 Installing the .deb (Ubuntu / Debian)
# 1. Change into the directory holding the package
$ cd ~/Downloads
# 2. Install (Docker is installed automatically when missing; internet access required)
$ sudo apt-get install ./sliverworkspace-community.deb2.3 Installing the .rpm (RHEL / CentOS 7+ / Rocky / Alma / Stream)
# 1. Change into the directory holding the package
$ cd ~/Downloads
# 2. Install
$ sudo yum install ./sliverworkspace-community.rpm- On CentOS 7 only
yumexists; on CentOS 8 and lateryumis a symlink todnf, so the same command works on every RPM-based distribution. - The package declares
Recommends: docker-ce, docker-compose-plugin. If the docker-ce repository is configured,yuminstalls both in the same transaction; the default RHEL / Rocky / Alma / Stream repositories do not ship docker-ce, so the field is skipped silently without an error and Docker is deployed byget_docker.sh(Aliyun mirror) inside the installer. CentOS 7 (yum 3.4 / rpm 4.11) does not support weak dependencies either — the field is ignored and the install falls back to the deferred path described below. - Progress is written to
/opt/SliverWorkspace/logs/install-runtime.log. If Docker is not ready yet at install time, the package step returns first and the runtime deployment runs after the package-manager lock is released. Check/opt/SliverWorkspace/logs/setup.status(QUEUED= pending,OK= finished) or runsudo bash /opt/SliverWorkspace/deferred-install.sh --status.
2.4 Installing the .tar.gz (any x86_64 Linux)
Run after installation/extraction (CentOS requires Docker installation, so it must be run under the root account):
# 1. Extract the archive
$ tar -zxvf sliverworkspace-community.tar.gz
# 2. Switch to the extracted directory
$ cd SliverWorkspace-${version}
# 3. Run the installation script
$ bash setup.bin- To view the contents of the installation script:
$ head -n 55 setup.bin2.5 Verifying the installation
Whichever format you used, the output should end with:
$ Creating sliverworkspace-dababase ... done
$ Creating sliverworkspace-backend ... done
$ Creating sliverworkspace-frontend ... done
$ Creating sliverworkspace-server ... done- After installation, check the container running status:
# 1. Switch to the installation directory
$ cd SliverWorkspace-${version}
# 2. Check the container running status
$ docker-compose ps3. Accessing SliverWorkspace
By default, SliverWorkspace uses a self-signed certificate to encrypt communication. If needed, you may purchase a domain name and apply for an official certificate.
In a WebKit-based browser (Chrome, Edge, etc.), enter https://ip in the address bar to open the home page, where ip is the IP address of the deployment server.

On first visit, if prompted with Your connection is not private, click the button Advanced → Proceed anyway.
In the Firefox browser, you need to enter https://ip:8443 and https://ip:10443 in the address bar in turn to add port exceptions.
4. Uninstallation:
# 1. Switch to the installation directory
$ cd ${install-dir}
# 2. Stop and remove the running containers
$ docker-compose down- If you installed from the .deb or .rpm package, use the bundled uninstaller for a complete removal (stops containers, deletes the install directory and desktop icons, and unregisters the package):
# Full uninstall; add --keep-images to keep the local images for a reinstall
$ sudo bash /opt/SliverWorkspace/uninstall.sh
$ sudo bash /opt/SliverWorkspace/uninstall.sh --keep-images5. Running Docker as a Non-root User
# First create the docker user group; you may skip this if the docker group already exists
$ sudo groupadd docker
# Add the user to the docker group
$ sudo gpasswd -a ${USER} docker
# Restart Docker
$ sudo service docker restart
# or
$ sudo systemctl restart docker
# If a regular user running a docker command gets a permission error such as "get …… dial unix /var/run/docker.sock: permission denied", modify the permissions of /var/run/docker.sock by running the following command as root
$ sudo chmod a+rw /var/run/docker.sock
6. Manually Installing Docker & Docker Compose:
Ubuntu 18.04/20.04/22.04: Installing Docker
# Download and run the installation script
$ wget -qO- https://get.docker.com/ | sh
# Install docker-compose
$ sudo apt-get install docker-compose- Uninstall old versions of Docker Old versions of Docker were named docker, docker-engine, or docker.io. If any old version is installed, uninstall it first:
$ sudo apt-get remove docker docker-engine docker.ioInstall the latest version of Docker The latest Docker comes in two editions: docker-ce (Community Edition) and docker-ee (Enterprise Edition). The CE edition is free; for learning or general use, CE is sufficient. We install the Community Edition: Since Docker installation requires HTTPS, apt must support HTTPS-based fetching.
2.1 Install packages related to HTTPS
$ sudo apt-get update # Update the software source index first
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common 2.2 Set up the apt repository. Due to network issues in China, it is strongly recommended to use a domestic mirror. Add the official Docker apt repository (using the overseas source) If the command hangs for a long time without response, the network cannot reach the Docker website, and you should use the domestic source instead.
# Add Docker's official GPG key
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# Set up the stable apt repository
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
# Add the Alibaba Cloud apt repository (using the domestic source)
$ curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
$(lsb_release -cs) \
stable" 2.3 Install Docker
$ sudo apt-get update
# Install the latest version of Docker
$ sudo apt-get install docker-ce
# To install a specific version of Docker, use the following commands:
$ apt-cache policy docker-ce # List all available Docker versions
$ sudo apt-get install docker-ce=18.03.0~ce-0~ubuntu # Install a specific version of Docker
# Verify that Docker was installed successfully
$ docker --version # Check the installed Docker version 2.4 Install docker-compose
# Install docker-compose
$ sudo apt-get install docker-compose
# Check the docker-compose version
$ docker-compose version
# or
$ sudo apt-get install python-pip
$ sudo pip install docker-composeCentOS 7/8
The centos-extras repository must be enabled. It is enabled by default, but if you have disabled it, you need to re-enable it.
The overlay2 storage driver is recommended.
Add the current user to the sudo user list by modifying the configuration file, to avoid switching users every time.
# Required for the installation environment: edit sudo privileges to avoid switching back to root every time
$ vi /etc/sudoers
# Find this line
$ root ALL=(ALL) ALL
# Add a line, where bootsir is the current username
$ boosir ALL=(ALL) ALL
# Find this line
$ Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
# Modify it to
$ Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/binUninstall old versions
Older Docker versions are called docker or docker-engine. If these are installed, uninstall them along with their related dependencies.
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engineInstall Docker Engine-Community
Install using a Docker repository
Before installing Docker Engine-Community for the first time on a new host, you need to set up the Docker repository. Afterwards, you can install and update Docker from the repository.
Setting up the repository
# Install the required packages. yum-utils provides yum-config-manager, and the device mapper storage driver requires device-mapper-persistent-data and lvm2
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Use the following command to set up the stable repository.
$ sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repoInstall Docker Engine-Community
Install the latest version of Docker Engine-Community and containerd, or go to the next step to install a specific version:
$ sudo yum install docker-ce docker-ce-cli containerd.ioIf prompted to accept the GPG key, choose yes.
Multiple Docker repositories?
If multiple Docker repositories are enabled, installing or updating without specifying a version in the yum install or yum update command always installs the highest version, which may not suit your stability requirements.
Docker is not started by default after installation. The docker user group has been created, but it contains no users.
To install a specific version of Docker Engine-Community, list the available versions in the repository, then select and install one:
- List and sort the versions available in your repository. This example sorts the results by version number, from highest to lowest.
$ sudo yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable- Install a specific version by its full package name, which is the package name (docker-ce) plus the version string (the second column), from the first colon (😃 up to the first hyphen, separated by a hyphen (-). For example: docker-ce-18.06.3.ce-3.el7.
$ sudo yum install docker-ce-18.06.3.ce-3.el7 docker-ce-cli containerd.ioStart Docker.
$ sudo systemctl start docker- Install docker-compose
# Or download directly from GitHub
$ sudo curl -L https://github.com/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose7. Appendix: CentOS 7/8 Firewall Configuration
# Start the firewall:
$ sudo systemctl start firewalld.service
# Enable it to start on boot:
$ sudo systemctl enable firewalld.service
# Restart the firewall:
$ sudo systemctl restart firewalld.service
# Check whether the firewall is running:
$ sudo firewall-cmd --state
# Open the software service ports
$ sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
$ sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
$ sudo firewall-cmd --zone=public --add-port=8443/tcp --permanent
$ sudo firewall-cmd --zone=public --add-port=10443/tcp --permanent
# Database port (optional)
$ sudo firewall-cmd --zone=public --add-port=5433/tcp --permanent
# Restart the firewall for the changes to take effect
$ sudo systemctl restart firewalld
# View
$ sudo firewall-cmd --zone=public --query-port=80/tcp
# Remove
$ sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent
$ sudo firewall-cmd --zone=public --remove-port=443/tcp --permanent
$ sudo firewall-cmd --zone=public --remove-port=8443/tcp --permanent
$ sudo firewall-cmd --zone=public --remove-port=10443/tcp --permanent
$ sudo firewall-cmd --zone=public --remove-port=5433/tcp --permanent
# Restart the firewall for the changes to take effect
$ sudo systemctl restart firewalld
# View ports
$ netstat -ntlp
# or
$ sudo firewall-cmd --list-ports