norimicry / stardew-multiplayer-docker

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

Having issues running the container #29

Closed RafaelMKA closed 7 months ago

RafaelMKA commented 7 months ago

All of this is in Windows 11 and I'm using visual studio code. I don't have any coding knowledge so everything I'm doing is based on YouTube tutorials. In the terminal I am putting:

docker run -p 5801:5800 jlesage/baseimage-gui:debian-11

This opens the container and it shows a black box (assumedly it's where Stardew is supposed to appear?) for a few seconds but then the box disappears and I'm just left with "Docker app."

Here is what the terminal looks like:

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 00-app-niceness.sh: executing...
[cont-init.d] 00-app-niceness.sh: exited 0.
[cont-init.d] 00-app-script.sh: executing...
[cont-init.d] 00-app-script.sh: exited 0.
[cont-init.d] 00-app-user-map.sh: executing...
[cont-init.d] 00-app-user-map.sh: exited 0.
[cont-init.d] 00-clean-logmonitor-states.sh: executing...
[cont-init.d] 00-clean-logmonitor-states.sh: exited 0.
[cont-init.d] 00-clean-tmp-dir.sh: executing... 
[cont-init.d] 00-clean-tmp-dir.sh: exited 0.
[cont-init.d] 00-set-app-deps.sh: executing...
[cont-init.d] 00-set-app-deps.sh: exited 0.
[cont-init.d] 00-set-home.sh: executing... 
[cont-init.d] 00-set-home.sh: exited 0.
[cont-init.d] 00-take-config-ownership.sh: executing...
[cont-init.d] 00-take-config-ownership.sh: exited 0.
[cont-init.d] 00-xdg-runtime-dir.sh: executing...
[cont-init.d] 00-xdg-runtime-dir.sh: exited 0.
[cont-init.d] 10-certs.sh: executing...
[cont-init.d] 10-certs.sh: exited 0.
[cont-init.d] 10-cjk-font.sh: executing...
[cont-init.d] 10-cjk-font.sh: exited 0.
[cont-init.d] 10-nginx.sh: executing...
[cont-init.d] 10-nginx.sh: exited 0.
[cont-init.d] 10-vnc-password.sh: executing...
[cont-init.d] 10-vnc-password.sh: exited 0.
[cont-init.d] 10-web-index.sh: executing...
[cont-init.d] 10-web-index.sh: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] starting s6-fdholderd...
[services.d] starting xvfb...
./run: 10: ps: not found
[xvfb] starting...
Failed to create /config/xdg/cache for shader cache (No such file or directory)---disabling.
[services.d] starting nginx...
[services.d] starting certsmonitor...
[nginx] starting...
[services.d] starting x11vnc...
[services.d] starting openbox...
[certsmonitor] disabling service: secure connection not enabled.
[x11vnc] starting...
Failed to create /config/xdg/cache for shader cache (No such file or directory)---disabling.     
03/05/2024 19:06:41 passing arg to libvncserver: -rfbport
03/05/2024 19:06:41 passing arg to libvncserver: 5900
03/05/2024 19:06:41 passing arg to libvncserver: -rfbportv6
03/05/2024 19:06:41 passing arg to libvncserver: 5900
03/05/2024 19:06:41 passing arg to libvncserver: -desktop
03/05/2024 19:06:41 passing arg to libvncserver: DockerApp
03/05/2024 19:06:41 x11vnc version: 0.9.14 lastmod: 2015-11-14  pid: 755
[openbox] starting...
03/05/2024 19:06:41 Using X display :0
03/05/2024 19:06:41 rootwin: 0x50e reswin: 0x200001 dpy: 0xa84e0ad0
03/05/2024 19:06:41
03/05/2024 19:06:41 ------------------ USEFUL INFORMATION ------------------
03/05/2024 19:06:41 X DAMAGE available on display, using it for polling hints.
03/05/2024 19:06:41   To disable this behavior use: '-noxdamage'
03/05/2024 19:06:41
03/05/2024 19:06:41   Most compositing window managers like 'compiz' or 'beryl'
03/05/2024 19:06:41   cause X DAMAGE to fail, and so you may not see any screen
03/05/2024 19:06:41   updates via VNC.  Either disable 'compiz' (recommended) or
03/05/2024 19:06:41   supply the x11vnc '-noxdamage' command line option.
03/05/2024 19:06:41 X COMPOSITE available on display, using it for window polling.
03/05/2024 19:06:41   To disable this behavior use: '-noxcomposite'
03/05/2024 19:06:41
03/05/2024 19:06:41 Wireframing: -wireframe mode is in effect for window moves.
03/05/2024 19:06:41   If this yields undesired behavior (poor response, painting
03/05/2024 19:06:41   errors, etc) it may be disabled:
03/05/2024 19:06:41    - use '-nowf' to disable wireframing completely.
03/05/2024 19:06:41    - use '-nowcr' to disable the Copy Rectangle after the
03/05/2024 19:06:41      moved window is released in the new position.
03/05/2024 19:06:41   Also see the -help entry for tuning parameters.
03/05/2024 19:06:41   You can press 3 Alt_L's (Left "Alt" key) in a row to
03/05/2024 19:06:41   repaint the screen, also see the -fixscreen option for
03/05/2024 19:06:41   periodic repaints.
03/05/2024 19:06:41 GrabServer control via XTEST.
03/05/2024 19:06:41
03/05/2024 19:06:41 Scroll Detection: -scrollcopyrect mode is in effect to
03/05/2024 19:06:41   use RECORD extension to try to detect scrolling windows
03/05/2024 19:06:41   (induced by either user keystroke or mouse input).
03/05/2024 19:06:41   If this yields undesired behavior (poor response, painting
03/05/2024 19:06:41   errors, etc) it may be disabled via: '-noscr'
03/05/2024 19:06:41   Also see the -help entry for tuning parameters.
03/05/2024 19:06:41   You can press 3 Alt_L's (Left "Alt" key) in a row to
03/05/2024 19:06:41   repaint the screen, also see the -fixscreen option for
03/05/2024 19:06:41   periodic repaints.
03/05/2024 19:06:41
03/05/2024 19:06:41 XKEYBOARD: number of keysyms per keycode 7 is greater
03/05/2024 19:06:41   than 4 and 51 keysyms are mapped above 4.
03/05/2024 19:06:41   Automatically switching to -xkb mode.
03/05/2024 19:06:41   If this makes the key mapping worse you can
03/05/2024 19:06:41   disable it with the "-noxkb" option.
03/05/2024 19:06:41   Also, remember "-remap DEAD" for accenting characters.
03/05/2024 19:06:41
03/05/2024 19:06:41 X FBPM extension not supported.
Xlib:  extension "DPMS" missing on display ":0".
03/05/2024 19:06:41 X display is not capable of DPMS.
03/05/2024 19:06:41 --------------------------------------------------------
03/05/2024 19:06:41
03/05/2024 19:06:41 Default visual ID: 0x21
03/05/2024 19:06:42 Read initial data from X display into framebuffer.
03/05/2024 19:06:42 initialize_screen: fb_depth/fb_bpp/fb_Bpl 24/32/5120
03/05/2024 19:06:42
03/05/2024 19:06:42 X display :0 is 32bpp depth=24 true color
03/05/2024 19:06:42
03/05/2024 19:06:42 Listening for VNC connections on TCP port 5900
03/05/2024 19:06:42 Listening for VNC connections on TCP6 port 5900
03/05/2024 19:06:42 listen6: bind: Address already in use
03/05/2024 19:06:42 Not listening on IPv6 interface.
03/05/2024 19:06:42
03/05/2024 19:06:42 Xinerama is present and active (e.g. multi-head).
03/05/2024 19:06:42 Xinerama: number of sub-screens: 1
03/05/2024 19:06:42 Xinerama: no blackouts needed (only one sub-screen)
03/05/2024 19:06:42
03/05/2024 19:06:42 fb read rate: 1110 MB/sec
03/05/2024 19:06:42 fast read: reset -wait  ms to: 10
03/05/2024 19:06:42 fast read: reset -defer ms to: 10
03/05/2024 19:06:42 The X server says there are 10 mouse buttons.
03/05/2024 19:06:42 screen setup finished.
03/05/2024 19:06:42

The VNC desktop is:      e1d70e824131:0
PORT=5900

******************************************************************************
Have you tried the x11vnc '-ncache' VNC client-side pixel caching feature yet?

The scheme stores pixel data offscreen on the VNC viewer side for faster
retrieval.  It should work with any VNC viewer.  Try it by running:

    x11vnc -ncache 10 ...

One can also add -ncache_cr for smooth 'copyrect' window motion.
More info: http://www.karlrunge.com/x11vnc/faq.html#faq-client-caching

[services.d] starting logmonitor...
[logmonitor] no file to monitor: disabling service...
[services.d] starting statusmonitor...
[statusmonitor] no file to monitor: disabling service...
[services.d] starting app...
[app] starting DockerApp...

/!\ No application to start: /startapp.sh is missing. /!\

[services.d] done.
[services.d] stopping services
[services.d] stopping app...
[services.d] stopping statusmonitor...
[services.d] stopping logmonitor...
[services.d] stopping openbox...
[services.d] stopping x11vnc...
caught signal: 15
03/05/2024 19:06:44 deleted 40 tile_row polling images.
[services.d] stopping certsmonitor...
[services.d] stopping nginx...
[services.d] stopping xvfb...
[services.d] stopping s6-fdholderd...
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] syncing disks.
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.
dlach524 commented 7 months ago

Do you own the game on Steam or on GoG?

The correct command to launch it once the container has been built is:

For GoG:

docker compose -f docker-compose-gog.yml up

For Steam:

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

But you should follow the instructions on the main page about how to setup the game files for GoG & Steam as they each have a different approach. The game files need to either be downloaded via your Steam account, or brought in with the GoG installer. Take a look so that you can set things up and issue a build command before you try to bring up the container. Things have changed a lot in the past week so there's a good chance the video you followed was for a previous version which is no longer applicable.

And for Windows, ideally you would have Docker Desktop installed and you would be running these commands in a command prompt.

RafaelMKA commented 7 months ago

I do have Stardew Valley on Steam. I was following the instructions on the main page so I put in my login information (into docker-compose-steam.yml) and put in the command for steam and it kept saying the steam username, password, and guard variables are not set.

I do have Docker Desktop and have currently been using the terminal in Visual Studio Code, is there a command prompt in Docker Desktop?

dlach524 commented 7 months ago

Docker Desktop becomes integrated with your OS when you install it, so you can simply run a Windows command prompt to issue Docker commands (Start>cmd). Once you're in the command prompt, you navigate to the folder where the docker-compose-steam.yml file resides, and from there you start issuing the required commands.

I believe the compose process is looking for environment variables when it calls for STEAM_USER, STEAM_PASS, and STEAM_GUARD. To set environment variables in Windows, you need to use the "SET" command, like so:

SET STEAM_USER=RafaleMKA
SET STEAM_PASS=password
SET STEAM_GUARD=ABC123

Immediately after entering this, especially the STEAM_GUARD, issue the build command:

docker compose -f docker-compose-steam.yml build --nocache

Note that the build command needs to be run in the same command prompt that you set the variables.

While the build process executes, it will eventually trigger a 2FA check with your Steam guard, so have your phone ready to approve it as soon as it appears.

RafaelMKA commented 7 months ago

Thanks for the help! This worked and the server is up and running, thank you!