2.6 KiB
SS14-Docker-Linux-Server 🚀
Containerized deployment of the Space Station 14 server on Linux.
Overview
This project is for those who prefer containerized solutions. It's based on the official documentation but wraps the wylab-station-14 fork in a Docker image that is built from source during the Docker build.
Building the Image
-
Clone this repository
git clone https://git.wylab.me/wylab/WS14-Docker-Linux-Server.git cd WS14-Docker-Linux-Server -
Configure your server defaults
Edit
appsettings.ymlandserver_config.tomlwith the values you want baked into the image. These files will be copied into/ss14-default/publishon first run. -
Build the Docker image
docker build \ --build-arg SOURCE_REPO=https://git.wylab.me/wylab/wylab-station-14.git \ --build-arg SOURCE_REF=master \ --build-arg TARGET_PLATFORM=linux-x64 \ -t wylab-ss14-server .SOURCE_REPO– Git URL of the content repo to compile (defaults to the wylab fork).SOURCE_REF– Branch, tag, or commit to check out (defaults tomaster).TARGET_PLATFORM– Runtime identifier passed to the packaging tool (defaults tolinux-x64).
The build container clones the selected ref, runs
RUN_THIS.py --quietto fetch submodules, and executesdotnet run --project Content.Packaging serverto generate a release zip that is baked into the final layer.
Running the Server
docker run -d \
-p 1212:1212/tcp \
-p 1212:1212/udp \
-p 5000:5000/tcp \
-p 5000:5000/udp \
-v /path/on/host:/ss14 \
--name wylab-ss14 \
wylab-ss14-server
On first start the container copies /ss14-default into your mounted volume (if empty) so you can edit configs or upload new builds persistently.
You can still wrap the container in Docker Compose if desired:
version: '3.9'
services:
ss14-server:
image: wylab-ss14-server
build: .
ports:
- "1212:1212/tcp"
- "1212:1212/udp"
- "5000:5000/tcp"
- "5000:5000/udp"
volumes:
- /path/on/host:/ss14
restart: unless-stopped