/ compose.yml
compose.yml
 1  name: minecraft
 2  services:
 3    minecraft:
 4      image: nausicaea/dvergr:local
 5      build:
 6        context: minecraft
 7        args:
 8          MINECRAFT_VERSION: "1.21.4"
 9          FABRIC_LOADER_VERSION: 0.17.2
10          FABRIC_LOADER_CHECKSUM: sha256:add80665872fe168a57dfae323ac6aee11e885d9cd97faee9ae05a6f1f65b010
11          FABRIC_INSTALLER_VERSION: 1.1.0
12          YARN_MAPPINGS_VERSION: 1.21.4+build.8
13          OTEL_JAVAAGENT_VERSION: 2.19.0
14          OTEL_JAVAAGENT_CHECKSUM: sha256:2bc973b5a5b61e7852df66be6388947f1b824b48d404ab5356fec464d0249869
15          OTEL_MOD_VERSION: 1.0.3+1-21-4
16          OTEL_MOD_CHECKSUM: sha256:bc42963ac09b56c715eaa1554b08e850517394893be482f07ba35531d4e31cad
17          PARABURDOO_VERSION: 1.1.0+1-21-4
18          PARABURDOO_CHECKSUM: sha256:fc9e24f4859cc332849c9bdf35264fdb080e99e75702c5d4e2ac82305425b4ce
19      container_name: minecraft
20      stdin_open: true
21      tty: true
22      #entrypoint: ["/bin/sh", "-c", "while true; do sleep 1; done"]
23      healthcheck:
24        test: ['CMD', '/usr/local/bin/healthcheck']
25        interval: 30s
26        timeout: 3s
27        retries: 3
28        start_period: 2m
29        start_interval: 5s
30      environment:
31        MINECRAFT_SERVER_ID: minecraft
32        JAVA_INITIAL_MEM: 256M
33        JAVA_MAX_MEM: 2G
34      volumes:
35        - persistent:/var/lib/minecraft/persistent
36        - config:/etc/minecraft
37        - cache:/var/cache/minecraft
38        - logs:/var/log/minecraft
39      expose:
40        - 25565/tcp
41        - 25565/udp
42      ports:
43        - 127.0.0.1:25565:25565/tcp
44        - 127.0.0.1:25565:25565/udp
45      mem_limit: 2G
46  
47  volumes:
48    # pvc/pv
49    persistent: {}
50    # emptyDir <- copy over from init container
51    config: {}
52    # emptyDir
53    cache: {}
54    # emptyDir
55    logs: {}