Dockerized The Isle Legacy Edition dedicated server in a Ubuntu 22.04 container with Wine.
Using docker-compose.yml
services:
theisle-legacy:
image: mitgobla/theisle-legacy
container_name: theisle-legacy
restart: unless-stopped
ports:
- "7777:7777/udp" # Game port
- "27015:27015/udp" # Query port
environment:
LOGDAYS: 7
ISLE_MAP_NAME: "Thenyaw"
ISLE_SERVER_NAME: "My Server"
ISLE_MOTD: |-
Welcome to my server!
Have a nice day.
ISLE_RESPAWN_TIME: 45
ISLE_LOGOUT_TIME: 60
ISLE_SERVER_ADMINS: "12345678901234567,76543210987654321"
ISLE_MAX_PLAYERS: 10
volumes:
- ./server:/mnt/theisle-legacy/serverUsing docker run
docker run -d \
--name theisle-legacy \
--restart unless-stopped \
-p 7777:7777/udp \
-p 27015:27015/udp \
-e LOGDAYS=7 \
-e ISLE_MAP_NAME="Thenyaw" \
-e ISLE_SERVER_NAME="My Server" \
-e ISLE_MOTD="Welcome to my server!
Have a nice day." \
-e ISLE_RESPAWN_TIME=45 \
-e ISLE_LOGOUT_TIME=60 \
-e ISLE_SERVER_ADMINS="12345678901234567,76543210987654321" \
-e ISLE_MAX_PLAYERS=10 \
-v "$(pwd)/server:/mnt/theisle-legacy/server" \
mitgobla/theisle-legacyUsing environment variables, you can configure aspects of the game.
Changes made to environment variables will be updated every time the server restarts. Therefore, any changes you make to the files directly will be lost. It is recommended to update your environment variables instead.
| Environment Variable | Default | Description |
|---|---|---|
CHECK_UPDATES |
true | Check for updates on server restart. |
Most variables are described on the game wiki and may not work as described. Some of them were for the beta branch and therefore have been omitted. Other variables were found via UE4SS inspection of the game.
| Environment Variable | Default | Description |
|---|---|---|
ISLE_MAP_NAME |
Thenyaw | Map name. Valid options: Thenyaw, Isle_V3 |
ISLE_PORT |
7777 | Instance port. Recommended to configure port changes using Docker compose. |
ISLE_QUERY_PORT |
27015 | Query Port. Recommended to configure port changes using Docker compose. |
ISLE_MOTD |
Message of the day text. |
| Environment Variable | Default | Description |
|---|---|---|
ISLE_SERVER_NAME |
Server | Name that the server will show up as in the Steam browser. |
ISLE_SERVER_STEAM_GROUP |
Set required SteamGroup64ID membership to login. | |
ISLE_PRIVATE |
false | Set server as private. |
ISLE_DATABASE |
true | Use database. |
ISLE_FAMILY_SHARING |
false | Enable family sharing. |
ISLE_SERVER_TAG |
0 | Set game type in Steam Server browser. Valid options: 0=Standard, 1=Realism, 2=Roleplay, 3=Experimental |
ISLE_GLOBAL_CHAT |
true | Allow global chat ability. |
ISLE_NAME_TAGS |
false | Set ability to see dino player nametags and icons. |
ISLE_EXPERIMENTAL |
false | Set server as experimental. |
ISLE_BATTLEYE |
true | Use Battleye anti-cheat system. |
ISLE_SERVER_AI |
true | Use AI spawning. |
ISLE_AI_MAX |
100 | Maximum number of AI that can spawn on the server. Note: seems to have no effect. |
ISLE_AI_RATE |
1.0 | AI spawn multiplier around each player. Note: seems to have no effect. |
ISLE_ALL_PLAYER_SPAWNS |
false | Allow the AI to use Spawn Points defined in the map for players and not only AI Spawn points. |
ISLE_GROWTH |
true | Allow dinos to grow over time. |
ISLE_NESTING |
true | Allow nesting baby dinos. |
ISLE_SCENT |
true | Allow scent tracking. |
ISLE_TURN_IN_PLACE |
false | Allow dinos to turn in place without moving forward. |
ISLE_FALL_DAMAGE |
true | Take fall damage. |
ISLE_REPLAY_RECORDING |
true | Allow video replay recording. |
ISLE_DEAD_BODY_TIME |
10 | Time in seconds before dead bodies de-spawn. |
ISLE_RESPAWN_TIME |
45 | Time in seconds before players can respawn after death. |
ISLE_LOGOUT_TIME |
60 | Time in seconds before players can safely logout, to prevent instant-logout during combat. |
ISLE_FOOTPRINT_LIFETIME |
60 | Time in seconds before footprints fade. |
ISLE_DYNAMIC_TOD |
true | Dynamic Time of Day. |
ISLE_TOD |
21600 | Time of day in seconds. |
ISLE_DAY_LENGTH |
3600 | Length of day in seconds. |
ISLE_DYNAMIC_WEATHER |
true | Allow dynamic weather. |
ISLE_DISCORD_LINK |
Discord invite link, do not include "https://discord.gg/" | |
ISLE_SERVER_ADMINS |
Comma-separated list of server admins Steam IDs. For example ISLE_SERVER_ADMINS=12345678901234567,76543210987654321 |
|
ISLE_BANNED_USERS |
Comma-separated list of banned player Steam IDs. For example ISLE_BANNED_USERS=12345678901234567,76543210987654321 |
| Environment Variable | Default | Description |
|---|---|---|
ISLE_PROG_OVERRIDES |
Override default progression. Comma-separated items in the format <DinoID>=<Points>. For example RexAdultS=20,AlloAdultS=30. Untested. |
|
ISLE_DISABLED_DINOS |
Comma-separated dinosaurs to disable from playable characters. For example ISLE_DISABLED_DINOS=DiabloAdultS,DryoAdultS |
| Environment Variable | Default | Description |
|---|---|---|
ISLE_MAX_SPECTATORS |
0 | Set maximum number of spectators. |
ISLE_MAX_PLAYERS |
50 | Set maximum number of players. |
Default logging has been set for the server to adjust what information is deemed useful. You can adjust these if you like, but note that some loggers can produce a lot of spam that can delay the server from starting.
| Environment Variable | Default | Description |
|---|---|---|
LOG_DAYS |
30 | Number of days to keep logs for. |
Valid options are: NoLogging, Error, Warning, Display, Log, Verbose, VeryVerbose
| Environment Variable | Default | Description |
|---|---|---|
LOG_PHYSICS |
NoLogging |
Log physics engine interactions. Causes a lot of spam on startup if enabled. |
LOG_PAK |
NoLogging |
Log PAK file mounting. |
LOG_STREAM |
NoLogging |
Log loading of assets. |
LOG_SLATE |
NoLogging |
Log widgets. Not useful for a dedicated server. |
LOG_NET |
Verbose |
Useful to get additional information about players joining/leaving the server. |
LOG_GAMEMODE |
Verbose |
Useful to know the state of the server. |
LOG_CONFIG |
Warning |
Logs config related actions. Useful to know if a configuration value was not found or incorrect. Causes a lot of spam if set to verbose. |
LOG_DATABASE |
Verbose |
Logs JSON database actions. Useful to know when a player dies, creates a new dinosaur, etc. |
LOG_ISLE |
Warning |
Logging shared across many functions. Useful for specific errors like missing configurations. |
Initial Dockerfile and start.sh was based on docker-vrising by TrueOsiris. If you have the game, I highly recommend their image if you want to run a dedicated V-Rising server.