compose/bitmagnet/docker-compose.yml
2024-12-29 09:59:59 +08:00

59 lines
1.4 KiB
YAML

services:
bitmagnet:
image: ghcr.io/bitmagnet-io/bitmagnet:latest
container_name: bitmagnet
ports:
# API and WebUI port:
# - "3333:3333"
# BitTorrent ports:
- "3334:3334/tcp"
- "3334:3334/udp"
restart: unless-stopped
environment:
- POSTGRES_HOST=bitmagnet-database
- POSTGRES_USER=bitmagnet
- POSTGRES_PASSWORD=postgres
networks:
- proxy
- bitmagnet
command:
- worker
- run
- --keys=http_server
- --keys=queue_server
- --keys=dht_crawler
depends_on:
database:
condition: service_healthy
labels:
- "traefik.enable=true"
- "traefik.docker.network=proxy"
- "traefik.http.routers.bitmagnet.rule=Host(`bitmagnet.example.com`)"
- "traefik.http.routers.bitmagnet.entrypoints=websecure"
- "traefik.http.routers.bitmagnet.service=bitmagnet"
- "traefik.http.services.bitmagnet.loadbalancer.server.port=3333"
database:
image: postgres:16-alpine
container_name: bitmagnet-database
volumes:
- ./data:/var/lib/postgresql/data
restart: unless-stopped
networks:
- bitmagnet
environment:
- POSTGRES_DB=bitmagnet
- POSTGRES_USER=bitmagnet
- POSTGRES_PASSWORD=postgres
shm_size: 1g
healthcheck:
test: [ "CMD-SHELL", "pg_isready" ]
start_period: 20s
interval: 10s
networks:
proxy:
external: true
bitmagnet:
name: bitmagnet