# A sample: ipx on its own, keeping everything in SQLite. Build the image first # (`docker build -t ipx .`), then `docker compose up -d`, and sign in at http://:8099 # as admin / ipodderx. docs/configuration.md has the rest, Postgres included. services: ipx: image: ipx container_name: ipx restart: unless-stopped environment: # Who owns the files it writes. 99:100 is Unraid's nobody:users. PUID: "99" PGID: "100" TZ: "UTC" # For Postgres instead of SQLite: # IPX_DATABASE_URL: "postgres://ipx:password@db-host:5432/ipx" ports: - "8099:8099" # web UI - "6881:6881/tcp" # BitTorrent peers - "6881:6881/udp" # DHT volumes: - ./config:/config # config.toml, written on first start - ./data:/data # state.db - ./downloads:/downloads healthcheck: test: ["CMD", "ipx", "status"] interval: 30s timeout: 5s retries: 3 start_period: 10s