131 lines
3.9 KiB
Markdown
131 lines
3.9 KiB
Markdown
# ARK: Survival Ascended Server
|
|
|
|
ARK: Survival Ascended dedicated server container for ZimaOS.
|
|
|
|
## Overview
|
|
|
|
This app provides a dedicated server for ARK: Survival Ascended, allowing you to host your own game server with automatic updates and remote administration capabilities.
|
|
|
|
## Features
|
|
|
|
- **Automatic Updates**: Server files are automatically updated on startup
|
|
- **Cluster Support**: Configure multiple servers to work together
|
|
- **Remote Administration**: RCON access for server management
|
|
- **Customizable**: Adjust game parameters, player limits, and maps
|
|
- **Secure by Default**: Runs with minimal privileges and capabilities
|
|
|
|
## Configuration
|
|
|
|
### Ports
|
|
|
|
- **7777/udp**: Game port for player connections
|
|
- **27020/tcp**: RCON port for remote server administration
|
|
|
|
### Volumes
|
|
|
|
All volumes are mounted under `/DATA/AppData/ark-suac/`:
|
|
|
|
- `steam`: Steam runtime files
|
|
- `steamcmd`: SteamCMD installation
|
|
- `server-files`: ARK server files and save data
|
|
- `cluster-shared`: Shared data for cluster setups
|
|
|
|
### Environment Variables
|
|
|
|
- `TZ`: Timezone (default: Europe/Stockholm)
|
|
- `ASA_START_PARAMS`: Server start parameters and map configuration
|
|
- `ENABLE_DEBUG`: Set to "1" to enable debug mode (prevents server startup)
|
|
|
|
## Security
|
|
|
|
### Baseline Security
|
|
|
|
- Runs as non-root user `gameserver`
|
|
- All capabilities dropped (`cap_drop: ALL`)
|
|
- `no-new-privileges` security option enabled
|
|
- No privileged mode required
|
|
- No Docker socket access
|
|
|
|
### Permission Bootstrap
|
|
|
|
The compose includes a one-shot helper service `set-permissions` that runs as `root`
|
|
before the game server starts. It only performs `chown` on app-specific bind mounts so
|
|
the main `ark-asa-server` service can run as non-root `gameserver`.
|
|
|
|
### Data Persistence
|
|
|
|
All game data, including server files, save games, and configuration, is persisted in the bound volumes. The container will automatically download and update server files on startup.
|
|
|
|
## Usage
|
|
|
|
### First Start
|
|
|
|
1. Install the app through ZimaOS App Store
|
|
2. Configure desired map and settings via `ASA_START_PARAMS`
|
|
3. Start the container - first startup will download ~11GB of server files
|
|
4. Connect to your server via the ARK game client
|
|
|
|
### Map Configuration
|
|
|
|
Change the map by modifying `ASA_START_PARAMS`. Example maps:
|
|
|
|
- `TheIsland_WP` (default)
|
|
- `ScorchedEarth_WP`
|
|
- `Ragnarok_WP`
|
|
- `Valguero_WP`
|
|
|
|
### Cluster Setup
|
|
|
|
For multi-server clusters:
|
|
|
|
1. Use the same `clusterid` parameter for all servers
|
|
2. Share the `cluster-shared` volume between containers
|
|
3. Configure different ports for each server instance
|
|
|
|
### Remote Administration
|
|
|
|
Connect to RCON on port 27020 using tools like:
|
|
|
|
- [ARK Server API](https://ark-server-api.com/)
|
|
- [Battlemetrics RCON](https://www.battlemetrics.com/rcon)
|
|
- Command line: `nc hostname 27020`
|
|
|
|
## Performance Requirements
|
|
|
|
- **RAM**: ~13GB per server instance
|
|
- **Disk**: ~11GB for server files + space for save games
|
|
- **CPU**: Modern multi-core processor recommended
|
|
|
|
## Updates
|
|
|
|
Server files are automatically updated on container startup. To update the container image itself, pull the new version through ZimaOS.
|
|
|
|
## Troubleshooting
|
|
|
|
### Server Not Visible
|
|
|
|
- Verify port 7777/udp is properly forwarded
|
|
- Check firewall settings
|
|
- Ensure `ASA_START_PARAMS` includes `?listen` parameter
|
|
|
|
### Connection Timeouts
|
|
|
|
- Verify your network configuration
|
|
- Check that UDP traffic is not being blocked
|
|
- Ensure the server has completed initialization (can take several minutes)
|
|
|
|
### Debug Mode
|
|
|
|
Set `ENABLE_DEBUG=1` to prevent server startup and investigate container issues.
|
|
|
|
## References
|
|
|
|
- [Upstream Repository](https://github.com/mschnitzer/asa-linux-server)
|
|
- [ARK Official Website](https://survivetheark.com/)
|
|
- [SteamCMD Documentation](https://developer.valvesoftware.com/wiki/SteamCMD)
|
|
|
|
## Support
|
|
|
|
For issues specific to this ZimaOS integration, please contact the Zima Apps Team.
|
|
For game server issues, refer to the upstream repository or ARK official support.
|