This commit is contained in:
Marc
2025-10-02 00:29:29 +02:00
parent e69f8f5a7d
commit 1b74197680
9 changed files with 308 additions and 4 deletions

58
docker-compose.yml Normal file
View File

@@ -0,0 +1,58 @@
version: "3.8"
services:
shulker:
build:
context: .
dockerfile: docker/shulker/Dockerfile
container_name: shulker
restart: unless-stopped
environment:
# Provide these via environment or .env file
- DISCORD_TOKEN=${DISCORD_TOKEN}
- DISCORD_CHANNEL_ID=${DISCORD_CHANNEL_ID}
- WEBHOOK_URL=${WEBHOOK_URL}
- SERVER_NAME=${SERVER_NAME:-Shulker}
- SERVER_IMAGE=${SERVER_IMAGE}
- DISCORD_MESSAGE_TEMPLATE=${DISCORD_MESSAGE_TEMPLATE}
- DEBUG=${DEBUG}
- ALLOW_USER_MENTIONS=${ALLOW_USER_MENTIONS}
- ALLOW_HERE_EVERYONE_MENTIONS=${ALLOW_HERE_EVERYONE_MENTIONS}
- MINECRAFT_SERVER_RCON_IP=${MINECRAFT_SERVER_RCON_IP}
- MINECRAFT_SERVER_RCON_PORT=${MINECRAFT_SERVER_RCON_PORT}
- MINECRAFT_SERVER_RCON_PASSWORD=${MINECRAFT_SERVER_RCON_PASSWORD}
- MINECRAFT_TELLRAW_DOESNT_EXIST=${MINECRAFT_TELLRAW_DOESNT_EXIST}
- MINECRAFT_TELLRAW_TEMPLATE=${MINECRAFT_TELLRAW_TEMPLATE}
- MINECRAFT_TELLRAW_DOESNT_EXIST_SAY_TEMPLATE=${MINECRAFT_TELLRAW_DOESNT_EXIST_SAY_TEMPLATE}
# Set to false if using remote hook mode
- IS_LOCAL_FILE=${IS_LOCAL_FILE:-true}
# Optionally override the log path inside the container
- LOCAL_FILE_PATH_OVERRIDE=${LOCAL_FILE_PATH_OVERRIDE}
volumes:
# Persist config.json in a named volume
- shulker_data:/data
# Map your host/server Minecraft logs into the container
- ${MC_LOGS_DIR:-./data/logs}:/minecraft/logs:ro
ports:
- "8000:8000"
mc:
image: itzg/minecraft-server
tty: true
stdin_open: true
ports:
- "25565:25565"
environment:
EULA: "TRUE"
ENABLE_RCON: "true"
RCON_PASSWORD: ${MINECRAFT_SERVER_RCON_PASSWORD}
RCON_PORT: ${MINECRAFT_SERVER_RCON_PORT}
# Ensure env values are written into server.properties on each start
OVERRIDE_SERVER_PROPERTIES: "true"
volumes:
# attach the relative directory 'data' to the container's /data path
- ./data:/data
volumes:
shulker_data:
driver: local