mschnitzer / ark-survival-ascended-linux-container-image

A docker/podman container that is able to run an ARK: Survival Ascended on a Linux host.
70 stars 13 forks source link

Game install/First start-up issue #55

Closed shadowfox2625 closed 3 months ago

shadowfox2625 commented 3 months ago

I followed the guide in the read me for getting everything setup. Everything went smooth until I was doing the first server start where its suppose to install everything except it dosnt seem to be able to install. When I showed the log it gives an error with resolving the address for the wget. Am I missing something or go wrong some where? Copying the log below.

[root@holoiso asa-server]# docker logs -f asa-server-1 --2024-04-02 10:39:51-- https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz Resolving steamcdn-a.akamaihd.net (steamcdn-a.akamaihd.net)... failed: Temporary failure in name resolution. wget: unable to resolve host address 'steamcdn-a.akamaihd.net' tar (child): steamcmd_linux.tar.gz: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now /usr/bin/start_server: line 17: ./steamcmd.sh: No such file or directory Starting the ARK: Survival Ascended dedicated server... Start parameters: TheIsland_WP?listen?Port=7777?RCONPort=27020?RCONEnabled=True -WinLiveMaxPlayers=50 -clusterid=default -ClusterDirOverride="/home/gameserver/cluster-shared" /usr/bin/start_server: line 49: cd: /home/gameserver/server-files/ShooterGame/Binaries/Win64: No such file or directory fsync: up and running. Failed to read /etc/machine-id, error Invalid argument. wine: Using setpriority to control niceness in the [-10,10] range --2024-04-02 10:41:04-- https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz Resolving steamcdn-a.akamaihd.net (steamcdn-a.akamaihd.net)... failed: Temporary failure in name resolution. wget: unable to resolve host address 'steamcdn-a.akamaihd.net' tar (child): steamcmd_linux.tar.gz: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now /usr/bin/start_server: line 17: ./steamcmd.sh: No such file or directory Starting the ARK: Survival Ascended dedicated server... Start parameters: TheIsland_WP?listen?Port=7777?RCONPort=27020?RCONEnabled=True -WinLiveMaxPlayers=50 -clusterid=default -ClusterDirOverride="/home/gameserver/cluster-shared" /usr/bin/start_server: line 49: cd: /home/gameserver/server-files/ShooterGame/Binaries/Win64: No such file or directory fsync: up and running. Failed to read /etc/machine-id, error Invalid argument. wine: Using setpriority to control niceness in the [-10,10] range --2024-04-02 10:59:18-- https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz Resolving steamcdn-a.akamaihd.net (steamcdn-a.akamaihd.net)... failed: Temporary failure in name resolution. wget: unable to resolve host address 'steamcdn-a.akamaihd.net' tar (child): steamcmd_linux.tar.gz: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now /usr/bin/start_server: line 17: ./steamcmd.sh: No such file or directory Starting the ARK: Survival Ascended dedicated server... Start parameters: TheIsland_WP?listen?Port=7777?RCONPort=27020?RCONEnabled=True -WinLiveMaxPlayers=50 -clusterid=default -ClusterDirOverride="/home/gameserver/cluster-shared" /usr/bin/start_server: line 49: cd: /home/gameserver/server-files/ShooterGame/Binaries/Win64: No such file or directory fsync: up and running. Failed to read /etc/machine-id, error Invalid argument. wine: Using setpriority to control niceness in the [-10,10] range --2024-04-02 11:08:30-- https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz Resolving steamcdn-a.akamaihd.net (steamcdn-a.akamaihd.net)... failed: Temporary failure in name resolution. wget: unable to resolve host address 'steamcdn-a.akamaihd.net' tar (child): steamcmd_linux.tar.gz: Cannot open: No such file or directory tar (child): Error is not recoverable: exiting now tar: Child returned status 2 tar: Error is not recoverable: exiting now /usr/bin/start_server: line 17: ./steamcmd.sh: No such file or directory Starting the ARK: Survival Ascended dedicated server... Start parameters: TheIsland_WP?listen?Port=7777?RCONPort=27020?RCONEnabled=True -WinLiveMaxPlayers=50 -clusterid=default -ClusterDirOverride="/home/gameserver/cluster-shared" /usr/bin/start_server: line 49: cd: /home/gameserver/server-files/ShooterGame/Binaries/Win64: No such file or directory fsync: up and running. Failed to read /etc/machine-id, error Invalid argument. wine: Using setpriority to control niceness in the [-10,10] range

mschnitzer commented 3 months ago

Sounds like the container is not able to talk to the internet or does not have any dns configuration.

Could you please run:

docker exec -ti -u root asa-server-1 bash

And paste the output of cat /etc/resolv.conf ?

Please also try to run the following commands:

zypper --no-gpg-checks ref
zypper in -y iputils

If that works, please try to run the following commands and let me know if they succeed:

ping 8.8.8.8
ping google.de

Did you modify the docker-compose.yml file at all? If so, what did you change? Did you change anything else for the docker setup? What OS are you running?

shadowfox2625 commented 3 months ago

[root@holoiso asa-server]# docker exec -ti -u root asa-server-1 bash Error response from daemon: Container c6897ece2cb3fde21fae9748d06541f3f25542b721ae3e2af885d25eeb75ce5a is not running

I am using HoloISO which is basically SteamOS 3.0 but for Full AMD built PCs. I do not have zypper on my build, I have Pacman and not sure how to format what you were asking for with pacman. I did try to Ping both 8.8.8.8 and google.de with 0 packet loss. As for the docker-compose.yml file, i have made no changes to it yet so it is still fully stock from download.

mschnitzer commented 3 months ago

The commands I requested you to execute were meant to be executed inside the container. As the container is not launched in your case, you need to launch it again, but I'd suggest doing so with the debug flag set to 1. If you edit docker-compose.yml and change ENABLE_DEBUG=0 to ENABLE_DEBUG=1 and run docker-compose up -d the container starts without attempting to download any Steam files.

Once the container is launched (verifiable by running docker ps), you can execute the commands as I demonstrated in my first reply.

Is for zypper not being available: As I already said, the commands were meant to be executed inside the container. The container itself uses the OS openSUSE Leap 15.5, which does provide zypper in the container.

shadowfox2625 commented 3 months ago

I set the Debug flag to 1 and ran the command again. This is my output.

[root@holoiso asa-server]# docker-compose up -d [+] Running 2/2 ⠿ Container asa-server-set-permissions-1-1 Started 1.1s ⠿ Container asa-server-1 Started 1.4s [root@holoiso asa-server]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9f9523588877 mschnitzer/asa-linux-server:latest "/usr/bin/start_serv…" 11 seconds ago Up 9 seconds 0.0.0.0:7777->7777/udp, 0.0.0.0:27020->27020/tcp asa-server-1 [root@holoiso asa-server]# zypper --no-gpg-checks ref bash: zypper: command not found

mschnitzer commented 3 months ago

You didn't execute the zypper command in the container, you need to run docker exec -ti -u root asa-server-1 bash otherwise the commands will be executed on your host.

shadowfox2625 commented 3 months ago

Heres what I got with the Zypper commands

asa-server-1:/home/gameserver # zypper --no-gpg-checks ref Retrieving repository 'repo-backports-update' metadata -----------------------------------------------------------------------------------------------[] Retrieving repository 'repo-backports-update' metadata ..............................................................................................................................................................................................................................................................[error] Repository 'repo-backports-update' is invalid. [repo-backports-update|http://download.opensuse.org/update/leap/15.5/backports/] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Skipping repository 'repo-backports-update' because of the above error. Retrieving repository 'repo-oss' metadata ...........................................................................................................................................................................................................................................................................[error] Repository 'repo-oss' is invalid. [repo-oss|http://download.opensuse.org/distribution/leap/15.5/repo/oss/] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Skipping repository 'repo-oss' because of the above error. Retrieving repository 'repo-sle-update' metadata ....................................................................................................................................................................................................................................................................[error] Repository 'repo-sle-update' is invalid. [repo-sle-update|http://download.opensuse.org/update/leap/15.5/sle/] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Skipping repository 'repo-sle-update' because of the above error. Retrieving repository 'repo-update' metadata ........................................................................................................................................................................................................................................................................[error] Repository 'repo-update' is invalid. [repo-update|http://download.opensuse.org/update/leap/15.5/oss] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Skipping repository 'repo-update' because of the above error. Retrieving repository 'ruby-repo' metadata ..........................................................................................................................................................................................................................................................................[error] Repository 'ruby-repo' is invalid. [ruby-repo|https://download.opensuse.org/repositories/devel:/languages:/ruby/15.5] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Skipping repository 'ruby-repo' because of the above error. Could not refresh the repositories because of errors. asa-server-1:/home/gameserver # asa-server-1:/home/gameserver # zypper in -y iputils Retrieving repository 'repo-backports-update' metadata ..............................................................................................................................................................................................................................................................[error] Repository 'repo-backports-update' is invalid. [repo-backports-update|http://download.opensuse.org/update/leap/15.5/backports/] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Warning: Skipping repository 'repo-backports-update' because of the above error. Retrieving repository 'repo-oss' metadata ...........................................................................................................................................................................................................................................................................[error] Repository 'repo-oss' is invalid. [repo-oss|http://download.opensuse.org/distribution/leap/15.5/repo/oss/] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Warning: Skipping repository 'repo-oss' because of the above error. Retrieving repository 'repo-sle-update' metadata ....................................................................................................................................................................................................................................................................[error] Repository 'repo-sle-update' is invalid. [repo-sle-update|http://download.opensuse.org/update/leap/15.5/sle/] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Warning: Skipping repository 'repo-sle-update' because of the above error. Retrieving repository 'repo-update' metadata ........................................................................................................................................................................................................................................................................[error] Repository 'repo-update' is invalid. [repo-update|http://download.opensuse.org/update/leap/15.5/oss] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Warning: Skipping repository 'repo-update' because of the above error. Retrieving repository 'ruby-repo' metadata ..........................................................................................................................................................................................................................................................................[error] Repository 'ruby-repo' is invalid. [ruby-repo|https://download.opensuse.org/repositories/devel:/languages:/ruby/15.5] Valid metadata not found at specified URL History:

Please check if the URIs defined for this repository are pointing to a valid repository. Warning: Skipping repository 'ruby-repo' because of the above error. Some of the repositories have not been refreshed because of an error. Loading repository data... Reading installed packages... 'iputils' not found in package names. Trying capabilities. No provider of 'iputils' found.

mschnitzer commented 3 months ago

Inside of the container, please run cat /etc/resolv.conf and paste the output here.

Outside of the container, please show me the output of docker inspect asa-server-1. Please go through this output before pasting it and obfuscate potential passwords you have set as start parameter.

shadowfox2625 commented 3 months ago

asa-server-1:/home/gameserver # cat /etc/resolv.conf search attlocal.net nameserver 127.0.0.11 options ndots:0 asa-server-1:/home/gameserver # exit exit [root@holoiso asa-server]# docker inspect asa-server-1 [ { "Id": "9f952358887793048356a28309befc1660267be3a9729b046e63c4da6c7dedac", "Created": "2024-04-03T10:51:48.574379931Z", "Path": "/usr/bin/start_server", "Args": [], "State": { "Status": "running", "Running": true, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 46540, "ExitCode": 0, "Error": "", "StartedAt": "2024-04-03T10:51:49.973379372Z", "FinishedAt": "0001-01-01T00:00:00Z" }, "Image": "sha256:6dc73fc9ec2a612e7f5287ba734dc3c06216af36ddab24f54abd64c666784d58", "ResolvConfPath": "/var/lib/docker/containers/9f952358887793048356a28309befc1660267be3a9729b046e63c4da6c7dedac/resolv.conf", "HostnamePath": "/var/lib/docker/containers/9f952358887793048356a28309befc1660267be3a9729b046e63c4da6c7dedac/hostname", "HostsPath": "/var/lib/docker/containers/9f952358887793048356a28309befc1660267be3a9729b046e63c4da6c7dedac/hosts", "LogPath": "/var/lib/docker/containers/9f952358887793048356a28309befc1660267be3a9729b046e63c4da6c7dedac/9f952358887793048356a28309befc1660267be3a9729b046e63c4da6c7dedac-json.log", "Name": "/asa-server-1", "RestartCount": 0, "Driver": "devicemapper", "Platform": "linux", "MountLabel": "", "ProcessLabel": "", "AppArmorProfile": "", "ExecIDs": null, "HostConfig": { "Binds": [ "/etc/localtime:/etc/localtime:ro" ], "ContainerIDFile": "", "LogConfig": { "Type": "json-file", "Config": {} }, "NetworkMode": "asa-server_asa-network", "PortBindings": { "27020/tcp": [ { "HostIp": "0.0.0.0", "HostPort": "27020" } ], "7777/udp": [ { "HostIp": "0.0.0.0", "HostPort": "7777" } ] }, "RestartPolicy": { "Name": "", "MaximumRetryCount": 0 }, "AutoRemove": false, "VolumeDriver": "", "VolumesFrom": null, "CapAdd": null, "CapDrop": null, "CgroupnsMode": "private", "Dns": null, "DnsOptions": null, "DnsSearch": null, "ExtraHosts": [], "GroupAdd": null, "IpcMode": "private", "Cgroup": "", "Links": null, "OomScoreAdj": 0, "PidMode": "", "Privileged": false, "PublishAllPorts": false, "ReadonlyRootfs": false, "SecurityOpt": null, "UTSMode": "", "UsernsMode": "", "ShmSize": 67108864, "Runtime": "runc", "ConsoleSize": [ 0, 0 ], "Isolation": "", "CpuShares": 0, "Memory": 0, "NanoCpus": 0, "CgroupParent": "", "BlkioWeight": 0, "BlkioWeightDevice": null, "BlkioDeviceReadBps": null, "BlkioDeviceWriteBps": null, "BlkioDeviceReadIOps": null, "BlkioDeviceWriteIOps": null, "CpuPeriod": 0, "CpuQuota": 0, "CpuRealtimePeriod": 0, "CpuRealtimeRuntime": 0, "CpusetCpus": "", "CpusetMems": "", "Devices": null, "DeviceCgroupRules": null, "DeviceRequests": null, "KernelMemory": 0, "KernelMemoryTCP": 0, "MemoryReservation": 0, "MemorySwap": 0, "MemorySwappiness": null, "OomKillDisable": null, "PidsLimit": null, "Ulimits": null, "CpuCount": 0, "CpuPercent": 0, "IOMaximumIOps": 0, "IOMaximumBandwidth": 0, "Mounts": [ { "Type": "volume", "Source": "asa-server_cluster-shared", "Target": "/home/gameserver/cluster-shared", "VolumeOptions": {} }, { "Type": "volume", "Source": "asa-server_steam-1", "Target": "/home/gameserver/Steam", "VolumeOptions": {} }, { "Type": "volume", "Source": "asa-server_steamcmd-1", "Target": "/home/gameserver/steamcmd", "VolumeOptions": {} }, { "Type": "volume", "Source": "asa-server_server-files-1", "Target": "/home/gameserver/server-files", "VolumeOptions": {} } ], "MaskedPaths": [ "/proc/asound", "/proc/acpi", "/proc/kcore", "/proc/keys", "/proc/latency_stats", "/proc/timer_list", "/proc/timer_stats", "/proc/sched_debug", "/proc/scsi", "/sys/firmware" ], "ReadonlyPaths": [ "/proc/bus", "/proc/fs", "/proc/irq", "/proc/sys", "/proc/sysrq-trigger" ] }, "GraphDriver": { "Data": { "DeviceId": "13", "DeviceName": "docker-259:3-37093437-6d872fca8244014ec3996ef7f353660aaba84150201592f121cfc576e81ddc7a", "DeviceSize": "10737418240" }, "Name": "devicemapper" }, "Mounts": [ { "Type": "volume", "Name": "asa-server_steamcmd-1", "Source": "/var/lib/docker/volumes/asa-server_steamcmd-1/_data", "Destination": "/home/gameserver/steamcmd", "Driver": "local", "Mode": "z", "RW": true, "Propagation": "" }, { "Type": "volume", "Name": "asa-server_server-files-1", "Source": "/var/lib/docker/volumes/asa-server_server-files-1/_data", "Destination": "/home/gameserver/server-files", "Driver": "local", "Mode": "z", "RW": true, "Propagation": "" }, { "Type": "bind", "Source": "/etc/localtime", "Destination": "/etc/localtime", "Mode": "ro", "RW": false, "Propagation": "rprivate" }, { "Type": "volume", "Name": "asa-server_cluster-shared", "Source": "/var/lib/docker/volumes/asa-server_cluster-shared/_data", "Destination": "/home/gameserver/cluster-shared", "Driver": "local", "Mode": "z", "RW": true, "Propagation": "" }, { "Type": "volume", "Name": "asa-server_steam-1", "Source": "/var/lib/docker/volumes/asa-server_steam-1/_data", "Destination": "/home/gameserver/Steam", "Driver": "local", "Mode": "z", "RW": true, "Propagation": "" } ], "Config": { "Hostname": "asa-server-1", "Domainname": "", "User": "gameserver", "AttachStdin": false, "AttachStdout": true, "AttachStderr": true, "ExposedPorts": { "27020/tcp": {}, "7777/udp": {} }, "Tty": false, "OpenStdin": false, "StdinOnce": false, "Env": [ "ASA_START_PARAMS=TheIsland_WP?listen?Port=7777?RCONPort=27020?RCONEnabled=True -WinLiveMaxPlayers=50 -clusterid=default -ClusterDirOverride=\"/home/gameserver/cluster-shared\"", "ENABLE_DEBUG=1" ], "Cmd": null, "Image": "mschnitzer/asa-linux-server:latest", "Volumes": { "/etc/localtime": {}, "/home/gameserver/Steam": {}, "/home/gameserver/cluster-shared": {}, "/home/gameserver/server-files": {}, "/home/gameserver/steamcmd": {} }, "WorkingDir": "/home/gameserver", "Entrypoint": [ "/usr/bin/start_server" ], "OnBuild": null, "Labels": { "com.docker.compose.config-hash": "2ef08d6724008ee471150f80378209e513fdc56e311628453ac53989e663eeb7", "com.docker.compose.container-number": "1", "com.docker.compose.depends_on": "set-permissions-1:service_started", "com.docker.compose.image": "sha256:6dc73fc9ec2a612e7f5287ba734dc3c06216af36ddab24f54abd64c666784d58", "com.docker.compose.oneoff": "False", "com.docker.compose.project": "asa-server", "com.docker.compose.project.config_files": "/home/shadow/asa-server/docker-compose.yml", "com.docker.compose.project.working_dir": "/home/shadow/asa-server", "com.docker.compose.service": "asa-server-1", "com.docker.compose.version": "2.12.0" } }, "NetworkSettings": { "Bridge": "", "SandboxID": "a2b044592bb488af4bddb9f65add580525b44dd7f6c52cdaa01ffefec9d868fe", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": { "27020/tcp": [ { "HostIp": "0.0.0.0", "HostPort": "27020" } ], "7777/udp": [ { "HostIp": "0.0.0.0", "HostPort": "7777" } ] }, "SandboxKey": "/var/run/docker/netns/a2b044592bb4", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, "EndpointID": "", "Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "MacAddress": "", "Networks": { "asa-server_asa-network": { "IPAMConfig": null, "Links": null, "Aliases": [ "asa-server-1", "asa-server-1", "9f9523588877" ], "NetworkID": "a134237e3f80f0769c284d96a3a8808d4186c3e87b889aa5b72c31b23a17e8a7", "EndpointID": "337ceb1572cbccc4b1c246d7c71cfc5bfb92bc5bfcd5aabc8754f07d86953f73", "Gateway": "172.18.0.1", "IPAddress": "172.18.0.2", "IPPrefixLen": 16, "IPv6Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "MacAddress": "02:42:ac:12:00:02", "DriverOpts": null } } } } ]

mschnitzer commented 3 months ago

I don't understand why the container is unable to communicate with the network...

Could you please try to run this command outside of your container?

docker run --rm -ti opensuse/leap bash

Once you are in this new container, please run:

zypper --no-gpg-checks ref ; zypper in -y iputils

If that does not throw any errors, please try to ping a service by running:

ping google.de

And let me know whether all of this succeeds.

If that succeeds, I guess it's the network config of the ASA server that doesn't seem to work in your case.

mschnitzer commented 3 months ago

Has this issue been resolved?

mschnitzer commented 3 months ago

Please reopen if this remains to be an issue.