rxr_docker_compose/rxr_mc/docker-compose.yaml
2024-12-28 19:51:30 +08:00

32 lines
1.2 KiB
YAML

services:
minecraft:
image: openjdk:17
container_name: minecraft-server
working_dir: /mc-server
environment:
- MAX_MEMORY=${MAX_MEMORY}
- MIN_MEMORY=${MIN_MEMORY}
- TZ=Asia/Shanghai
volumes:
- ${MC_DIR}:/mc-server
command: >
java -Xms${MAX_MEMORY} -Xmx${MAX_MEMORY} -XX:MaxRAM=${MAX_MEMORY}
-XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200
-XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC
-XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40
-XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5
-XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15
-XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5
-XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1
-Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true
-jar ${JAR_FILE} nogui
ports:
- "25565:25565"
stdin_open: true
tty: true
restart: always
mem_limit: 10G
memswap_limit: 10G # 禁止使用 swap
oom_score_adj: -1000
stop_grace_period: 120s # 设置关闭宽限期为 120 秒