On Dokploy, traffic is routed through Traefik via the configured domain — publishing host ports caused a collision with another service already bound to 3000 on the same host. Switch to `expose` so the ports are reachable on the internal Docker network only. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
27 lines
840 B
YAML
27 lines
840 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
reddit-bot:
|
|
build: .
|
|
container_name: reddit-bot
|
|
restart: unless-stopped
|
|
dns:
|
|
- 1.1.1.1
|
|
- 8.8.8.8
|
|
# Mount the data directory to persist the database and browser session
|
|
volumes:
|
|
- ./data:/app/data
|
|
# Ports are NOT published to the host. Dokploy/Traefik routes traffic
|
|
# to the container's internal ports via configured domains.
|
|
expose:
|
|
- "3000" # Web dashboard
|
|
- "6080" # noVNC for human login
|
|
environment:
|
|
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY}
|
|
- REDDIT_USERNAME=${REDDIT_USERNAME}
|
|
- REDDIT_PASSWORD=${REDDIT_PASSWORD}
|
|
# Chromium runs headed under Xvfb so a human can complete login over noVNC.
|
|
- BROWSER_HEADLESS=false
|
|
# Required to lock down the VNC endpoint.
|
|
- VNC_PASSWORD=${VNC_PASSWORD}
|