mirror of
https://github.com/DerTyp7/docker_minecraft_server_auto_starter.git
synced 2025-10-29 20:52:09 +01:00
104 lines
2.8 KiB
YAML
104 lines
2.8 KiB
YAML
version: "3.9"
|
|
|
|
networks:
|
|
# You need to have a network with static ips for the servers.
|
|
mc_network:
|
|
driver: bridge
|
|
ipam:
|
|
driver: default
|
|
config:
|
|
- subnet: 172.20.0.0/16
|
|
|
|
services:
|
|
auto_starter:
|
|
container_name: mc_auto_starter
|
|
build: .
|
|
ports:
|
|
- 25565:25565
|
|
- 25566:25566
|
|
environment:
|
|
# The ip of the placeholder servers below
|
|
PLACEHOLDER_SERVER_SLEEPING_IP: "172.20.0.3"
|
|
PLACEHOLDER_SERVER_STARTING_IP: "172.20.0.4"
|
|
|
|
# Port mapping for the servers
|
|
# The key is the external port of the placeholder server
|
|
# The value is the internal ip of the actual server
|
|
# Don't change the server port in the actual server. Use this instead.
|
|
PORT_IP_MAP: |
|
|
25565: 172.20.0.5
|
|
25566: 172.20.0.6
|
|
networks:
|
|
mc_network:
|
|
ipv4_address: 172.20.0.2
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
# These are the placeholder servers. They are used to show the player a message
|
|
# They are not needed, but they are nice to have
|
|
# Keep in mind these servers are consuming some resources
|
|
mc_placeholder_server_sleeping:
|
|
container_name: mc_placeholder_server_sleeping
|
|
image: itzg/minecraft-server
|
|
environment:
|
|
type: "PAPER"
|
|
EULA: "TRUE"
|
|
MOTD: "Sleeping | Join & Wait to wake up"
|
|
MAX_PLAYERS: "0"
|
|
MAX_MEMORY: "500M"
|
|
INIT_MEMORY: "100M"
|
|
networks:
|
|
mc_network:
|
|
ipv4_address: 172.20.0.3
|
|
|
|
mc_placeholder_server_starting:
|
|
container_name: mc_placeholder_server_starting
|
|
image: itzg/minecraft-server
|
|
environment:
|
|
type: "PAPER"
|
|
EULA: "TRUE"
|
|
MOTD: "Starting..."
|
|
MAX_PLAYERS: "0"
|
|
MAX_MEMORY: "500M"
|
|
INIT_MEMORY: "100M"
|
|
networks:
|
|
mc_network:
|
|
ipv4_address: 172.20.0.4
|
|
|
|
# These are the actual servers
|
|
mc:
|
|
container_name: example_mc_server_1
|
|
image: itzg/minecraft-server
|
|
environment:
|
|
type: "PAPER"
|
|
EULA: "TRUE"
|
|
MOTD: "TEST1"
|
|
MAX_PLAYERS: "0"
|
|
|
|
# Enable autostop, so the auto_starter makes sense
|
|
ENABLE_AUTOSTOP: "TRUE"
|
|
AUTOSTOP_TIMEOUT_EST: "30"
|
|
AAUTOSTOP_TIMEOUT_INIT: "10"
|
|
#! Dont change SERVER_PORT. Use PORT_IP_MAP in auto_starter instead.
|
|
#! SERVER_PORT default is "25565"
|
|
networks:
|
|
mc_network:
|
|
ipv4_address: 172.20.0.5
|
|
mc2:
|
|
container_name: example_mc_server_2
|
|
image: itzg/minecraft-server
|
|
environment:
|
|
type: "PAPER"
|
|
EULA: "TRUE"
|
|
MOTD: "TEST2"
|
|
|
|
# Enable autostop, so the auto_starter makes sense
|
|
ENABLE_AUTOSTOP: "TRUE"
|
|
AUTOSTOP_TIMEOUT_EST: "30"
|
|
AAUTOSTOP_TIMEOUT_INIT: "10"
|
|
#! Dont change SERVER_PORT. Use PORT_IP_MAP in auto_starter instead.
|
|
# SERVER_PORT default is "25565"
|
|
networks:
|
|
mc_network:
|
|
ipv4_address: 172.20.0.6
|