norimicry / stardew-multiplayer-docker

Run a Stardew Valley Multiplayer Server with docker-compose
102 stars 26 forks source link

[REQUEST]: #38

Closed EpicallyJess closed 3 months ago

EpicallyJess commented 4 months ago

Can you help me build this into a stack for Portainer?

norimicry commented 4 months ago

Portainer relies on only a docker-compose file to pull a complete image. This has not been built in a single image and takes different approaches based on GoG/Steam and the respective Dockerfile. So right now, this is not possible to run in Portainer.

github-actions[bot] commented 3 months ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] commented 3 months ago

This issue was closed because it has been stalled for 5 days with no activity.

EpicallyJess commented 2 months ago

So I’ve been learning a lot, mostly through error.

I tried installing this on my Raspberry Pi and hound that there’s a library not supported for ARM so then I thought I should install it on my Synology NAS I’m not sure how to get it on there. It has a Docker package but I can’t seem to find or install your Docker script. So then I looked at the CLI and it’s awkward in that it doesn’t have apt or another way to get and install packages. Do you have any suggestions or should I just invest in something like an N100 mini PC (https://www.asus.com/ca-en/displays-desktops/mini-pcs/pn-series/asus-expertcenter-pn42/)

From: norimicry @.> Date: Thursday, July 25, 2024 at 4:32 PM To: norimicry/stardew-multiplayer-docker @.> Cc: EpicallyJess @.>, Author @.> Subject: Re: [norimicry/stardew-multiplayer-docker] [REQUEST]: (Issue #38)

Portainer relies on only a docker-compose file to pull a complete image. This has not been built in a single image and takes different approaches based on GoG/Steam and the respective Dockerfile. So right now, this is not possible to run in Portainer.

— Reply to this email directly, view it on GitHubhttps://github.com/norimicry/stardew-multiplayer-docker/issues/38#issuecomment-2251344963, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOX3KZRGGKRD7TIZN2N5543ZOFOE3AVCNFSM6AAAAABLPIEHTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENJRGM2DIOJWGM. You are receiving this because you authored the thread.Message ID: @.***>

norimicry commented 2 months ago

I'm not super familiar with Synology systems but I'm happy to help figure it out. You'll need to ensure you have Git installed on the system as well. I believe that would be available via Synocommunity if not already. Then it would just be a matter of cloning the code base and launching it via docker compose.

EpicallyJess commented 2 months ago

Ok, so here’s what I did. I set up Ubuntu Server 24.04.1 LTS and got that running on my Synology NAS. I’ve got the git repo copied, but every time I try to run the docker compose command I get a message that the environment variables for steam aren’t set. I don’t know where to put them in the .yml file, nor do I know how to use this “export” command that you’ve mentioned in your README. I’m stuck, but I’m sure this is a whole lot easier for you to answer than my first roadblock.


From: norimicry @.> Sent: Tuesday, September 24, 2024 7:49:13 PM To: norimicry/stardew-multiplayer-docker @.> Cc: EpicallyJess @.>; Author @.> Subject: Re: [norimicry/stardew-multiplayer-docker] [REQUEST]: (Issue #38)

I'm not super familiar with Synology systems but I'm happy to help figure it out. You'll need to ensure you have Git installed on the system as well. I believe that would be available via Synocommunityhttps://synocommunity.com if not already. Then it would just be a matter of following the git clone instructions in the README.

— Reply to this email directly, view it on GitHubhttps://github.com/norimicry/stardew-multiplayer-docker/issues/38#issuecomment-2372585756, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOX3KZWGFUC4DE3P6KALVDTZYH27TAVCNFSM6AAAAABLPIEHTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNZSGU4DKNZVGY. You are receiving this because you authored the thread.Message ID: @.***>

norimicry commented 2 months ago

Export is a Bash command that you would type directly within the terminal. Execute all of these commands from within the directory after cloning.

## Set these variables only during the first build or during updates
export STEAM_USER=<steamUsername>
export STEAM_PASS=<steamPassword>
export STEAM_GUARD=<lastesSteamGuardCode> # If you account is not protected, don't set

docker compose -f docker-compose-steam.yml up
EpicallyJess commented 2 months ago

Ok, so I got it running. Now I’ve got a bunch of different problems.

  1. Every time I shut the container down, when I start it back up I have to VNC back into it to be able to log in externally (like through Steam) as a player.
  2. It seems to reset the world every time as I always have to create a new person and it starts on Day 1.
  3. I can’t seem to adjust the time speed even though I set everything to 600.
  4. I don’t know how to get the invite code because despite reading that the Always on Mod says it will create a file in that folder no file with the invite code is created.

From: norimicry @.> Sent: Thursday, September 26, 2024 8:54:57 AM To: norimicry/stardew-multiplayer-docker @.> Cc: EpicallyJess @.>; Author @.> Subject: Re: [norimicry/stardew-multiplayer-docker] [REQUEST]: (Issue #38)

Export is a Bash command that you would type directly within the terminal. Execute all of these commands from within the directory after cloning.

Set these variables only during the first build or during updates

export STEAM_USER= export STEAM_PASS= export STEAM_GUARD= # If you account is not protected, don't set

docker compose -f docker-compose-steam.yml up

— Reply to this email directly, view it on GitHubhttps://github.com/norimicry/stardew-multiplayer-docker/issues/38#issuecomment-2376874072, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOX3KZVXGRH5R4WQDTJMYTTZYP72DAVCNFSM6AAAAABLPIEHTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNZWHA3TIMBXGI. You are receiving this because you authored the thread.Message ID: @.***>

norimicry commented 2 months ago
  1. How are you shutting the container down? It should not be rebuilding the container each time, the only need for Steam is to download the game files. It is also not meant to be played via VNC, a dummy character is created to host the server and then you connect via your account.
  2. Have you modified the docker-compose-steam.yml at all? The world should be saved to ./valley_saves in the directory unless specified otherwise.
  3. That could be an issue with the mod (not created by me). It could be outdated or not loaded properly. How did you set the settings?
  4. Invite code will not work with this as the authentication does not end up going through GoG or Steam in the end. You will need to port forward to the container and have people connect via your external IP.
Accessing the server

- Direct IP: You will need to set a up direct IP access over the internet "Join LAN Game" by opening (or forwarding) port 24642. Feel free to change this mapping in the compose file. People can then "Join LAN Game" via your external IP.
norimicry commented 2 months ago

Please provide your docker-compose-steam.yml.