1.5 KiB
1.5 KiB
Docker Setup
In order to run TShock in a docker container, you would need to have mountpoints for
/tshock(TShock config files, logs and crash reports)/worlds/plugins/server(optional, if you want to mount TShock's cwd)
These folders can be mounted using -v <host_folder>:<container>
Open ports can also be passed through using -p <host_port>:<container_port>.
7777for Terraria7878for TShock's REST API
For Example:
# Building the image
docker build -t tshock:linux/amd64 --build-arg TARGETPLATFORM=linux/amd64 .
# Running the image
docker run -p 7777:7777 -p 7878:7878 \
-v /home/cider/tshock/:/tshock \
-v /home/cider/.local/share/Terraria/Worlds:/worlds \
-v /home/cider/tshock/plugins:/plugins \
--rm -it tshock:linux/amd64 \
-world /worlds/backflip.wld -motd "OMFG DOCKER"
Building for Other Platforms
Using docker buildx, you could build multi-platform images for TShock.
For Example:
# Building the image using buildx and loading it into docker
sudo docker buildx build -t tshock:linux-arm64 --platform linux/arm64 --load .
# Running the image
docker run -p 7777:7777 -p 7878:7878 \
-v /home/cider/tshock/:/tshock \
-v /home/cider/.local/share/Terraria/Worlds:/worlds \
-v /home/cider/tshock/plugins:/plugins \
--rm -it tshock:linux-arm64 \
-world /worlds/backflip.wld -motd "ARM64 ftw"