services: albion: build: context: . dockerfile: Dockerfile image: albion-economy:latest container_name: albion-economy restart: unless-stopped environment: # Shared Postgres reachable on the internal `backend` network. Set the full # URL in a .env file next to this compose, e.g. # DATABASE_URL=postgres://albion:pw@postgres:5432/albion DATABASE_URL: ${DATABASE_URL:?set DATABASE_URL in .env} # REQUIRED for public deployment — the agent and web UI send this as a # Bearer token. Set it in .env too. ALBION_API_KEY: ${ALBION_API_KEY:?set ALBION_API_KEY in .env} HOST: 0.0.0.0 PORT: "4310" # Downloaded game-data JSON cache (not the DB) lives here. ALBION_DATA_DIR: /data volumes: - albion_data:/data networks: - proxy # Nginx Proxy Manager terminates TLS + assigns the subdomain - backend # shared Postgres lives here # No host port publish: NPM reverse-proxies to albion:4310 on the proxy network. # To run standalone without NPM, uncomment: # ports: # - "4310:4310" volumes: albion_data: networks: proxy: external: true backend: external: true