docker run \
--detach \
--name minecraft \
--restart unless-stopped \
--publish 25565:25565 \
--volume minecraft-data:/var/lib/minecraft \
bmoorman/minecraft:latest
version: "3.7"
services:
minecraft:
image: bmoorman/minecraft:latest
container_name: minecraft
restart: unless-stopped
ports:
- "25565:25565"
volumes:
- minecraft-data:/var/lib/minecraft
volumes:
minecraft-data:
Variable | Description | Default |
---|---|---|
TZ | Sets the timezone | America/Denver |
MC_VERSION | Sets the Minecraft server version | latest |
MC_SERVER_NAME | Sets an arbitrary java arg for identifying a process - useful when running multiple servers | minecraft |
MC_MIN_MEM | Sets the minimum RAM allocated to java | 1G |
MC_MAX_MEM | Sets the maximum RAM allocated to java | 2G |
MC_JAVA_ARGS | Sets custom args passed to java | <empty> |
MC_WORLD_ZIP | Sets the URL for a world zip file | <empty> |
Variable | Description | Default |
---|---|---|
MC_PAPER | Set to true to enable Paper | false |
MC_PAPER_BUILD | Sets the Paper build version (if enabled) | latest |
Variable | Description | Default |
---|---|---|
MC_FABRIC | Set to true to enable Fabric | false |
MC_FABRIC_INSTALLER_VERSION | Sets the Fabric installer version (if enabled) | latest |
All options in eula.txt
and server.properties
can be updated using environment variables with:
MC_<Key>
Everything should be uppercase, .
and -
should be replaced by _
. For example, if you want to update these settings:
eula=true
level-type=flat
view-distance=16
You would set the following environment variables:
MC_EULA=true
MC_LEVEL_TYPE=flat
MC_VIEW_DISTANCE=16