Switch from bind mounts to named docker volumes
This commit is contained in:
140
compose.yml
140
compose.yml
@@ -1,31 +1,33 @@
|
||||
services:
|
||||
velocity:
|
||||
image: itzg/mc-proxy:java21-2025.1.0
|
||||
container_name: illegal_crime_velocity
|
||||
container_name: minecraft_server_velocity
|
||||
user: 2015:2015 # minecraft_server:minecraft_server
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
init_volumes:
|
||||
condition: service_completed_successfully
|
||||
luckperms_db:
|
||||
condition: service_healthy
|
||||
restart: true
|
||||
fabric:
|
||||
condition: service_healthy
|
||||
restart: true
|
||||
paper:
|
||||
condition: service_healthy
|
||||
restart: true
|
||||
luckperms_db:
|
||||
condition: service_healthy
|
||||
restart: true
|
||||
secrets:
|
||||
- rcon_password
|
||||
- forwarding_secret
|
||||
- dclink_token
|
||||
- luckperms_db_password
|
||||
networks:
|
||||
illegal_crime_mc_network:
|
||||
minecraft_server_network:
|
||||
ipv4_address: "10.100.1.3"
|
||||
ports:
|
||||
- 25000:25565
|
||||
volumes:
|
||||
- ./velocity/data:/server:rw
|
||||
- velocity_data:/server:rw
|
||||
- ./velocity/config:/config:ro
|
||||
environment:
|
||||
TYPE: VELOCITY
|
||||
@@ -36,12 +38,15 @@ services:
|
||||
|
||||
REPLACE_ENV_VARIABLES: true
|
||||
ENV_VARIABLE_PREFIX: CFG_
|
||||
|
||||
|
||||
ENABLE_RCON: true
|
||||
RCON_PORT: 25575
|
||||
|
||||
RCON_PASSWORD_FILE: /run/secrets/rcon_password
|
||||
CFG_RCON_PASSWORD_FILE: /run/secrets/rcon_password
|
||||
CFG_DCLINK_GUILD: ${DCLINK_GUILD}
|
||||
CFG_DCLINK_CHANNEL: ${DCLINK_CHANNEL}
|
||||
CFG_DCLINK_ROLE: ${DCLINK_ROLE}
|
||||
CFG_DCLINK_TOKEN_FILE: /run/secrets/dclink_token
|
||||
CFG_LUCKPERMS_DB_PASSWORD_FILE: /run/secrets/luckperms_db_password
|
||||
|
||||
@@ -56,10 +61,12 @@ services:
|
||||
|
||||
bluemap:
|
||||
image: ghcr.io/bluemap-minecraft/bluemap:v5.7
|
||||
container_name: illegal_crime_bluemap
|
||||
container_name: minecraft_server_bluemap
|
||||
user: 2015:2015 # minecraft_server:minecraft_server
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
init_volumes:
|
||||
condition: service_completed_successfully
|
||||
fabric:
|
||||
condition: service_healthy
|
||||
restart: true
|
||||
@@ -68,21 +75,23 @@ services:
|
||||
restart: true
|
||||
command: -g -w
|
||||
networks:
|
||||
illegal_crime_mc_network:
|
||||
minecraft_server_network:
|
||||
ipv4_address: "10.100.1.6"
|
||||
ports:
|
||||
- 8100:8100
|
||||
volumes:
|
||||
- ./bluemap/data:/app/data:rw
|
||||
- ./bluemap/web:/app/web:rw
|
||||
- ./bluemap/config:/app/config:rw
|
||||
- ./bluemap/maps:/app/web/maps:ro
|
||||
- bluemap_data:/app/data:rw
|
||||
- bluemap_web:/app/web:rw
|
||||
- bluemap_maps:/app/web/maps:ro
|
||||
- ./bluemap/config:/app/config:ro
|
||||
|
||||
paper:
|
||||
image: itzg/minecraft-server:2025.3.0-java23
|
||||
container_name: illegal_crime_paper
|
||||
container_name: minecraft_server_paper
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
init_volumes:
|
||||
condition: service_completed_successfully
|
||||
luckperms_db:
|
||||
condition: service_healthy
|
||||
restart: true
|
||||
@@ -96,14 +105,17 @@ services:
|
||||
- forwarding_secret
|
||||
- luckperms_db_password
|
||||
networks:
|
||||
illegal_crime_mc_network:
|
||||
minecraft_server_network:
|
||||
ipv4_address: "10.100.1.4"
|
||||
volumes:
|
||||
- ./paper/data:/data:rw
|
||||
- paper_data:/data:rw
|
||||
- schematics:/data/plugins/WorldEdit/schematics:rw
|
||||
- bluemap_maps:/data/bluemap/web/maps:rw
|
||||
- ./paper/config:/config:ro
|
||||
- ./paper/plugins:/plugins:ro
|
||||
- ./schematics:/data/plugins/WorldEdit/schematics:rw
|
||||
- ./bluemap/maps:/data/bluemap/web/maps:rw
|
||||
- ./paper/data/bukkit.yml:/data/bukkit.yml:ro
|
||||
- ./paper/data/commands.yml:/data/commands.yml:ro
|
||||
- ./paper/data/spigot.yml:/data/spigot.yml:ro
|
||||
environment:
|
||||
UID: 2015 # minecraft_server
|
||||
GID: 2015 # minecraft_server
|
||||
@@ -125,22 +137,22 @@ services:
|
||||
|
||||
BROADCAST_CONSOLE_TO_OPS: false
|
||||
BROADCAST_RCON_TO_OPS: false
|
||||
|
||||
|
||||
ONLINE_MODE: false
|
||||
OP_PERMISSION_LEVEL: 2
|
||||
MAX_PLAYERS: 50
|
||||
DIFFICULTY: easy
|
||||
LEVEL: survival
|
||||
|
||||
|
||||
MODE: creative
|
||||
LEVEL_TYPE: minecraft:default
|
||||
LEVEL_TYPE: minecraft:normal
|
||||
ENABLE_COMMAND_BLOCK: true
|
||||
GENERATE_STRUCTURES: false
|
||||
SPAWN_ANIMALS: false
|
||||
SPAWN_MONSTERS: false
|
||||
SPAWN_NPCS: false
|
||||
SPAWN_PROTECTION: 0
|
||||
|
||||
|
||||
USE_AIKAR_FLAGS: true
|
||||
LOG_TIMESTAMP: true
|
||||
|
||||
@@ -155,7 +167,7 @@ services:
|
||||
CFG_RCON_PASSWORD_FILE: /run/secrets/rcon_password
|
||||
CFG_FORWARDING_SECRET_FILE: /run/secrets/forwarding_secret
|
||||
CFG_LUCKPERMS_DB_PASSWORD_FILE: /run/secrets/luckperms_db_password
|
||||
|
||||
|
||||
PLUGINS: |
|
||||
https://github.com/EssentialsX/Essentials/releases/download/2.20.1/EssentialsX-2.20.1.jar
|
||||
|
||||
@@ -171,12 +183,14 @@ services:
|
||||
stfu-velocity:Y3nJXOQT
|
||||
vaultunlocked:fC53e1Vr
|
||||
worldedit:4jRlujfz
|
||||
|
||||
|
||||
fabric:
|
||||
image: itzg/minecraft-server:2025.3.0-java23
|
||||
container_name: illegal_crime_fabric
|
||||
container_name: minecraft_server_fabric
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
init_volumes:
|
||||
condition: service_completed_successfully
|
||||
luckperms_db:
|
||||
condition: service_healthy
|
||||
restart: true
|
||||
@@ -190,13 +204,13 @@ services:
|
||||
- forwarding_secret
|
||||
- luckperms_db_password
|
||||
networks:
|
||||
illegal_crime_mc_network:
|
||||
minecraft_server_network:
|
||||
ipv4_address: "10.100.1.5"
|
||||
volumes:
|
||||
- ./fabric/data:/data:rw
|
||||
- fabric_data:/data:rw
|
||||
- schematics:/data/config/worldedit/schematics:rw
|
||||
- bluemap_maps:/data/bluemap/web/maps:rw
|
||||
- ./fabric/config:/config:ro
|
||||
- ./schematics:/data/config/worldedit/schematics:rw
|
||||
- ./bluemap/maps:/data/bluemap/web/maps:rw
|
||||
environment:
|
||||
UID: 2015 # minecraft_server
|
||||
GID: 2015 # minecraft_server
|
||||
@@ -217,13 +231,13 @@ services:
|
||||
|
||||
BROADCAST_CONSOLE_TO_OPS: false
|
||||
BROADCAST_RCON_TO_OPS: false
|
||||
|
||||
|
||||
ONLINE_MODE: false
|
||||
OP_PERMISSION_LEVEL: 2
|
||||
MAX_PLAYERS: 50
|
||||
DIFFICULTY: easy
|
||||
LEVEL: world
|
||||
|
||||
|
||||
MODE: creative
|
||||
LEVEL_TYPE: minecraft:flat
|
||||
ENABLE_COMMAND_BLOCK: true
|
||||
@@ -232,7 +246,7 @@ services:
|
||||
SPAWN_MONSTERS: false
|
||||
SPAWN_NPCS: false
|
||||
SPAWN_PROTECTION: 0
|
||||
|
||||
|
||||
USE_AIKAR_FLAGS: true
|
||||
LOG_TIMESTAMP: true
|
||||
|
||||
@@ -286,9 +300,12 @@ services:
|
||||
|
||||
luckperms_db:
|
||||
image: postgres:17.4
|
||||
container_name: illegal_crime_luckperms_db
|
||||
container_name: minecraft_server_luckperms_db
|
||||
user: 2015:2015 # minecraft_server:minecraft_server
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
init_volumes:
|
||||
condition: service_completed_successfully
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U luckperms -d luckperms"]
|
||||
interval: 10s
|
||||
@@ -298,20 +315,52 @@ services:
|
||||
secrets:
|
||||
- luckperms_db_password
|
||||
networks:
|
||||
illegal_crime_mc_network:
|
||||
minecraft_server_network:
|
||||
ipv4_address: "10.100.1.2"
|
||||
ports:
|
||||
- 5434:5432
|
||||
volumes:
|
||||
- luckperms_data:/var/lib/postgresql/data:rw
|
||||
- /etc/passwd:/etc/passwd:ro
|
||||
- ./luckperms/data:/var/lib/postgresql/data:rw
|
||||
- ./backups:/backups:rw
|
||||
# - ./backups:/backups:rw
|
||||
environment:
|
||||
POSTGRES_PASSWORD_FILE: /run/secrets/luckperms_db_password
|
||||
POSTGRES_USER: luckperms
|
||||
POSTGRES_DB: luckperms
|
||||
PGDATA: /var/lib/postgresql/data/pgdata
|
||||
|
||||
init_volumes:
|
||||
container_name: minecraft_server_init_volumes
|
||||
image: busybox:1.37.0
|
||||
user: root:root
|
||||
command: /init_volumes.sh
|
||||
restart: no
|
||||
network_mode: none
|
||||
volumes:
|
||||
- ./scripts/init_volumes.sh:/init_volumes.sh:ro
|
||||
# Used for resolving user and group names within the init script
|
||||
- /etc/passwd:/etc/passwd:ro
|
||||
- /etc/group:/etc/group:ro
|
||||
# Mount all named volumes so they can be initialised
|
||||
- velocity_data:/velocity_data:rw
|
||||
- bluemap_data:/bluemap_data:rw
|
||||
- bluemap_web:/bluemap_web:rw
|
||||
- bluemap_maps:/bluemap_maps:rw
|
||||
- schematics:/schematics:rw
|
||||
- paper_data:/paper_data:rw
|
||||
- fabric_data:/fabric_data:rw
|
||||
- luckperms_data:/luckperms_data:rw
|
||||
|
||||
networks:
|
||||
minecraft_server_network:
|
||||
name: minecraft_server_network
|
||||
driver: bridge
|
||||
ipam:
|
||||
driver: default
|
||||
config:
|
||||
- subnet: "10.100.1.0/24"
|
||||
gateway: "10.100.1.1"
|
||||
|
||||
secrets:
|
||||
rcon_password:
|
||||
environment: RCON_PASSWORD
|
||||
@@ -322,13 +371,12 @@ secrets:
|
||||
luckperms_db_password:
|
||||
environment: LUCKPERMS_DB_PASSWORD
|
||||
|
||||
networks:
|
||||
illegal_crime_mc_network:
|
||||
name: illegal_crime_mc_network
|
||||
driver: bridge
|
||||
ipam:
|
||||
driver: default
|
||||
config:
|
||||
- subnet: "10.100.1.0/24"
|
||||
gateway: "10.100.1.1"
|
||||
|
||||
volumes:
|
||||
velocity_data:
|
||||
bluemap_data:
|
||||
bluemap_web:
|
||||
bluemap_maps:
|
||||
schematics:
|
||||
paper_data:
|
||||
fabric_data:
|
||||
luckperms_data:
|
||||
|
||||
Reference in New Issue
Block a user