Skip to main content

Crafty Controller

Use these steps to run Crafty Controller with Docker Compose.

Create the Compose File​

Create a docker-compose.yml file with the Crafty Controller service:

services:
crafty:
container_name: crafty_container
image: registry.gitlab.com/crafty-controller/crafty-4:latest
restart: always
environment:
- TZ=${TZ}
ports:
- "8443:8443"
- "25500-25600:25500-25600"
volumes:
- ./docker/backups:/crafty/backups
- ./docker/logs:/crafty/logs
- ./docker/servers:/crafty/servers
- ./docker/config:/crafty/app/config
- ./docker/import:/crafty/import

Create the Environment File​

Create a .env file in the same directory as docker-compose.yml:

TZ=Etc/UTC

Start Crafty Controller​

Run Docker Compose from the directory containing both files:

docker compose up -d

Crafty Controller will be available at https://localhost:8443.

The Minecraft server port range 25500-25600 is exposed for servers managed by Crafty Controller.

Reverse Proxy / HTTPS​

If you need public HTTPS access to the Crafty web UI, put it behind a reverse proxy like Nginx Proxy Manager. Keep the Minecraft server port range exposed separately as needed.