-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
98 lines (82 loc) · 2.67 KB
/
docker-compose.yml
File metadata and controls
98 lines (82 loc) · 2.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
services:
minecraft:
build:
context: .
image: elemental-dragon:latest
container_name: ${CONTAINER_NAME:-papermc-elementaldragon}
restart: unless-stopped
entrypoint:
- /bin/sh
- -c
- |
# Run the offline ops setup script BEFORE /start
if [ -f /image/scripts/auto/99-plugin-setup ]; then
. /image/scripts/auto/99-plugin-setup
fi
# Then run the original entrypoint
exec /start
ports:
- "25565:25565"
- "25575:25575"
environment:
# Server type and version
- TYPE=PAPER
- VERSION=${VERSION:-1.21.8}
# EULA (required)
- EULA=${EULA:-TRUE}
# Memory configuration
- MEMORY=${MEMORYSIZE:-2G}
# World profile configuration
- LEVEL=${LEVEL:-world}
- LEVEL_TYPE=${LEVEL_TYPE:-default}
- SEED=${SEED:-}
- GENERATE_STRUCTURES=${GENERATE_STRUCTURES:-true}
- MAX_WORLD_SIZE=${MAX_WORLD_SIZE:-29999984}
- GENERATOR_SETTINGS=${GENERATOR_SETTINGS:-}
# Gameplay configuration
- GAMEMODE=${MODE:-survival}
- DIFFICULTY=${DIFFICULTY:-normal}
- PVP=${PVP:-true}
- SPAWN_PROTECTION=${SPAWN_PROTECTION:-16}
- ALLOW_NETHER=${ALLOW_NETHER:-true}
- ALLOW_END=${ALLOW_END:-true}
# Performance configuration
- VIEW_DISTANCE=${VIEW_DISTANCE:-10}
- SIMULATION_DISTANCE=${SIMULATION_DISTANCE:-10}
# Entity spawning
- SPAWN_ANIMALS=${SPAWN_ANIMALS:-true}
- SPAWN_MONSTERS=${SPAWN_MONSTERS:-true}
- SPAWN_NPCS=${SPAWN_NPCS:-true}
# Server configuration
- ONLINE_MODE=${ONLINE_MODE:-false}
- MAX_PLAYERS=${MAX_PLAYERS:-10}
- MOTD=${MOTD:-Elemental Dragon Plugin Server}
- SERVER_NAME=${SERVER_NAME:-Dragon Egg Lightning Server}
# RCON configuration
- ENABLE_RCON=${ENABLE_RCON:-true}
- RCON_PORT=${RCON_PORT:-25575}
- RCON_PASSWORD=${RCON_PASSWORD:-dragon123}
# UID/GID for permissions
- UID=${MC_UID:-1000}
- GID=${MC_GID:-1000}
# Locale
- TZ=${TZ:-UTC}
- LC_ALL=${LC_ALL:-en_US.UTF-8}
# JVM flags (for PaperMC)
- PAPERMC_FLAGS=${PAPERMC_FLAGS}
# Plugins (synchronized from /plugins to /data/plugins)
- PLUGINS=/image/plugins/ElementalDragon.jar
# Offline operators (comma-separated usernames, offline UUIDs auto-generated)
- OFFLINE_OPS=${OFFLINE_OPS:-posiflow}
# Skip mc-image-helper processing of ops.json
- EXISTING_OPS_FILE=SKIP
volumes:
# Persist all server data
- ./server-data:/data:rw
stdin_open: true
tty: true
networks:
- minecraft-network
networks:
minecraft-network:
driver: bridge