Go to file
2020-04-07 05:20:53 +02:00
configs redoing configuration 2020-04-07 03:52:52 +02:00
docker user folder bugfixes 2020-04-07 05:20:53 +02:00
roles/nickjj.docker Terraform deploy on hetzner cloud 2019-04-13 02:06:51 +02:00
terraform Setup running prperly again 2019-04-14 06:02:02 +02:00
.gitignore 🐱 covid-19 containment is really boring 2020-04-07 02:37:51 +02:00
config Working & Starting 2019-04-09 18:54:50 +02:00
docker-compose.yml user folder bugfixes 2020-04-07 05:20:53 +02:00
playbook.yml config changes for ansible 2020-04-07 04:38:34 +02:00
README.md 1.4 2020-04-07 04:51:45 +02:00
terra.sh Terraform deploy on hetzner cloud 2019-04-13 02:06:51 +02:00

Stardew Valley Multiplayer Docker Compose

This project aims to autostart a Stardew Valley Multiplayer Server as easy as possible.

Setup

Docker-Compose

git clone https://github.com/printfuck/stardew-multiplayer-docker

docker-compose up

Ansible

Create an inventory file with your hosts

ansible -i <your_inventori> playbook.yml

Terraform (with Hetzner Cloud)

Enter your API Token in terraform/vars.auto.tfvars and run the following script:

./terra.sh

Game Setup

Intially you have to create or load a game once after first startup. After that the Autoload Mod jump starts into the previously loaded savegame everytime you rerun the container. You can also edit the config file of the Autoload Mod to archieve similar behaviour.

How it works

The game, the modloader (SMAPI), and the "Always On" Mod is pulled from my servers to minimize version conflicts. Afterwards everything will be unpacked into the right places. In the end of the init script the game will be started inside Xvfb.

Why Docker

This should be simple and easily deployable, so there are only a few options.

Used Mods

Troubleshooting

Error Messages in Console

Usually you should be able to ignore any messages. If the game doesn't start or any errors appear, you should look for message like "cannot open display", whiich would indicate most likely permission errors.

VNC

Access the game via VNC to initially load or start a pregenerated savegame. You can control the Server from there or edit the config.json files in the configs folder