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

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

How to Start ASA Server with Boot Using systemd #67

Closed Spoilage3785 closed 4 months ago

Spoilage3785 commented 4 months ago

Hi,

This is not an issue, just a question.

First off, thank you for creating this container! I really appreciate. It has been a smooth and easy experience.

I was wondering if it were possible to have the server start up when booting using systemd.

I have an ASE server and I implemented the systemd according to the official community wiki. I am not 100% sure on the paths for the below systemd file to work:

[Unit] Description=ARK: Survival Ascended Dedicated Server Wants=network-online.target After=syslog.target network.target nss-lookup.target network-online.target

[Service] ExecStartPre=steamcmd/path (unsure where that would be) +force_install_dir /home/arkserver/asa-server (unsure where that would be) +login anonymous +app_update 2430930 +quit ExecStart=/home/arkserver/asa-server (unsure where that would be) ASA_START_PARAMS=ScorchedEarth_WP?listen?Port=7777?RCONPort=27020?RCONEnabled=False?ServerPassword=SecretPassword?ServerAdminPassword=SuperSecretPassword -WinLiveMaxPlayers=2 -clusterid=default -ClusterDirOverride="/home/gameserver/cluster-shared" WorkingDirectory=/home/arkserver/asa-server (unsure where that would be) LimitNOFILE=100000 ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s INT $MAINPID User=arkserver Group=docker

[Install] WantedBy=multi-user.target

Would the above code work with the proper paths? Or is there a different way?

Thanks!

mschnitzer commented 4 months ago

I'd approach it from a different angle. Just add to the docker-compose.yml file a restart: always definition below this line: https://github.com/mschnitzer/ark-survival-ascended-linux-container-image/blob/5a5fc84ab6f1ef77eb796f436e832aa355336fca/docker-compose.yml#L8

Once done, restart the ASA server by running docker-compose up -d again. Now the container starts when the host has finished booting. Make sure docker is marked as auto start by running systemctl enable docker

Spoilage3785 commented 4 months ago

I'd approach it from a different angle.

Way easier. Thanks!