asa_server
Run your own Ark Survival Ascended game server effortlessly with this Docker image.
50K+
This Docker image is designed to run a dedicated server for the game Ark Survival Ascended. It's based on scottyhardy/docker-wine to enable the running of Windows applications. The image uses a bash script to handle startup, server installation, server update ,and setting up environment variables.
| Variable | Default | Description |
|---|---|---|
PUID | 1001 | The UID to run server as |
PGID | 1001 | The GID to run server as |
BATTLEEYE | TRUE | Set to TRUE to use BattleEye, FALSE to not use BattleEye |
RCON_ENABLED | TRUE | Needed for Graceful Shutdown |
DISPLAY_POK_MONITOR_MESSAGE | FALSE | TRUE to Show the Server Monitor Messages / Update Monitor Shutdown |
UPDATE_SERVER | TRUE | Enable or disable update checks |
CHECK_FOR_UPDATE_INTERVAL | 24 | Check for Updates interval in hours |
UPDATE_WINDOW_MINIMUM_TIME | 12:00 AM | Defines the minimum time, relative to server time, when an update check should run |
UPDATE_WINDOW_MAXIMUM_TIME | 11:59 PM | Defines the maximum time, relative to server time, when an update check should run |
RESTART_NOTICE_MINUTES | 30 | Duration in minutes for notifying players before a server restart due to updates |
ENABLE_MOTD | FALSE | Enable or disable Message of the Day |
MOTD | Message of the Day | |
MOTD_DURATION | 30 | Duration for the Message of the Day |
MAP_NAME | TheIsland | The map name (`TheIsland') Or Custom Map Name Can Be Enter aswell |
SESSION_NAME | Server_name | The session name for the server |
SERVER_ADMIN_PASSWORD | MyPassword | The admin password for the server |
SERVER_PASSWORD | Set a server password or leave it blank (ONLY NUMBERS AND CHARACTERS ARE ALLOWED BY DEVS) | |
ASA_PORT | 7777 | The game port for the server |
RCON_PORT | 27020 | Rcon Port Use for Most Server Operations |
MAX_PLAYERS | 127 | Max allowed players |
CLUSTER_ID | cluster | The Cluster ID for the server |
MOD_IDS | Add your mod IDs here, separated by commas, e.g., 123456789,987654321 | |
CUSTOM_SERVER_ARGS | If You need to add more Custom Args -ForceRespawnDinos -ForceAllowCaveFlyers |
PUID and PGID: These are important for setting the permissions of the folders that Docker will use. Make sure to set these values based on your host machine's user and group ID
Folder Creation: Before starting the Docker Compose file, make sure to manually create any folders that you'll be using for volumes, especially if you're overriding the default folders.
UPDATE_WINDOW_MINIMUM_TIME and UPDATE_WINDOW_MAXIMUM_TIME: Combined, these two values can allow you to define a time window for when server updates should be performed. This can be useful to ensure update driven restarts only happen during off peak hours.
| Port | Description |
|---|---|
7777/tcp | Game port |
7777/udp | Game port |
Query Port is not needed for Ark Ascended
When you run the docker compose up it should create this folders in the same folder as the docker-compose.yaml file unless changed by the user
| Volume Path | Description |
|---|---|
./ASA | Game files |
./ARK Survival Ascended Dedicated Server | Server files |
./Cluster | Cluster files |
Create a docker-compose.yaml file and populate it with the service definition.
version: '2.4'
services:
asaserver:
build: .
image: acekorneya/asa_server:latest
container_name: asa_Server
restart: unless-stopped
environment:
- PUID=1001 # The UID to run server as
- PGID=1001 # The GID to run server as
- BATTLEEYE=FALSE # Set to TRUE to use BattleEye, FALSE to not use BattleEye
- RCON_ENABLED=TRUE # Needed for Graceful Shutdown / Updates / Server Notifications
- DISPLAY_POK_MONITOR_MESSAGE=FALSE # TRUE to Show the Server Monitor Messages / Update Monitor
- UPDATE_SERVER=TRUE # Enable or disable update checks
- CHECK_FOR_UPDATE_INTERVAL=24 # Check for Updates interval in hours
- UPDATE_WINDOW_MINIMUM_TIME=12:00 AM # Defines the minimum time, relative to server time, when an update check should run
- UPDATE_WINDOW_MAXIMUM_TIME=11:59 PM # Defines the maximum time, relative to server time, when an update check should run
- RESTART_NOTICE_MINUTES=30 # Duration in minutes for notifying players before a server restart due to updates
- ENABLE_MOTD=FALSE # Enable or disable Message of the Day
- MOTD= # Message of the Day
- MOTD_DURATION=30 # Duration for the Message of the Day
- MAP_NAME=TheIsland
- SESSION_NAME=Server_name
- SERVER_ADMIN_PASSWORD=MyPassword
- SERVER_PASSWORD= # Set a server password or leave it blank (ONLY NUMBERS AND CHARACTERS ARE ALLOWED BY DEVS)
- ASA_PORT=7777
- RCON_PORT=27020
- MAX_PLAYERS=70
- CLUSTER_ID=cluster
- MOD_IDS= # Add your mod IDs here, separated by commas, e.g., 123456789,987654321
- CUSTOM_SERVER_ARGS= # If You need to add more Custom Args -ForceRespawnDinos -ForceAllowCaveFlyers
ports:
- "7777:7777/tcp"
- "7777:7777/udp"
volumes:
- "./ASA:/usr/games/.wine/drive_c/POK/Steam/steamapps/common/ARK Survival Ascended Dedicated Server/ShooterGame"
- "./ARK Survival Ascended Dedicated Server:/usr/games/.wine/drive_c/POK/Steam/steamapps/common/ARK Survival Ascended Dedicated Server"
- "./Cluster:/usr/games/.wine/drive_c/POK/Steam/steamapps/common/ShooterGame"
mem_limit: 16G
If you're planning to change the volume directories, create those directories manually before starting the service.
Then, run the following command to start the server:
sudo docker compose up
Advanced Config For custom settings, edit GameUserSettings.ini in ASA/Saved/Config/WindowsServer. Modify and restart the container.
IF you see this at the end of you logs
asa_pve_Server | [2023.11.06-03.55.48:449][ 1]Allocator Stats for binned2 are not in this build set BINNED2_ALLOCATOR_STATS 1 in MallocBinned2.cpp
you need to run this command first
sysctl -w vm.max_map_count=262144
if you want to make it perment
sudo -s echo "vm.max_map_count=262144" >> /etc/sysctl.conf && sysctl -p
If you are using Proxmox as your virtual host make sure to set the CPU Type to "host" in your VM elsewise you'll get errors with the server.
If you want to run Rcon_manager.sh download it just place it in the same folder as your docker-compose.yaml make it executable and launch it..
you can also do automatic restart with CronJobs example below
0 3 * * * /path/to/start_rcon_manager.sh -restart 10
this will schedule a restart every day at 3 AM with a 10-minute countdown
Open a terminal or command prompt.
romove old docker image
docker rmi acekorneya/asa_server:latest
then run this command downloads the latest version of the Ark: Survival Ascended Docker image from Docker Hub.
docker pull acekorneya/asa_server:latest.
Restart the Docker Container
First, bring down your current container with
docker-compose down.
Then, start it again using
docker-compose up.
These commands stop the currently running container and start a new one with the updated image.
Content type
Image
Digest
sha256:65f796a04…
Size
3.2 GB
Last updated
about 9 hours ago
docker pull acekorneya/asa_server:2_1_beta