| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- services:
- db:
- image: mariadb:10.11
- environment:
- MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
- MYSQL_DATABASE: ${MYSQL_DATABASE}
- MYSQL_USER: ${MYSQL_USER}
- MYSQL_PASSWORD: ${MYSQL_PASSWORD}
- volumes:
- - tas_councils_db_data:/var/lib/mysql
- restart: unless-stopped
- ports:
- - "3306:3306"
- healthcheck:
- test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "-uscraper", "-pscr@perpass"]
- interval: 10s
- timeout: 5s
- retries: 10
- adminer:
- image: adminer
- ports:
- - "9980:8080"
- depends_on:
- - db
- restart: unless-stopped
- scraper:
- build: .
- environment:
- MYSQL_HOST: db
- MYSQL_PORT: "3306"
- MYSQL_DB: ${MYSQL_DATABASE}
- MYSQL_USER: ${MYSQL_USER}
- MYSQL_PASSWORD: ${MYSQL_PASSWORD}
- # If set, the runner loops. Minutes between runs:
- SCRAPE_EVERY_MINUTES: "720"
- GOOGLE_MAPS_API_KEY: ${GOOGLE_MAPS_API_KEY}
- DOWNLOAD_ATTACHMENTS: "1"
- DOWNLOAD_DIR: /downloads
- LOOKUP_URL: ${LOOKUP_URL}
- LOOKUP_THROTTLE_MS: ${LOOKUP_THROTTLE_MS:-150}
- # Log verbosity: debug | info (default) | warn | error
- LOG_LEVEL: ${LOG_LEVEL:-info}
- # SMTP — summary error emails (optional; leave blank to disable)
- SMTP_HOST: ${SMTP_HOST:-}
- SMTP_PORT: ${SMTP_PORT:-587}
- SMTP_USERNAME: ${SMTP_USERNAME:-}
- SMTP_PASSWORD: ${SMTP_PASSWORD:-}
- SMTP_SMTPSecure: ${SMTP_SMTPSecure:-tls}
- SMTP_SENTFROM: ${SMTP_SENTFROM:-}
- SMTP_ADDADDRESS: ${SMTP_ADDADDRESS:-}
- volumes:
- - ./scrapers:/app/scrapers:ro
- - ./tools:/app/tools:ro
- - ./downloads:/downloads
- - ./lib:/app/lib:ro
- depends_on:
- db:
- condition: service_healthy
- # Default runs all once and exits. To loop, set SCRAPE_EVERY_MINUTES env above.
- command: ["/app/entrypoint.sh"]
- restart: unless-stopped
- web:
- build: ./web
- image: councils-web:latest
- volumes:
- - ./web:/var/www/html:ro
- - ./downloads:/srv/files:ro
- - ./web/000-files.conf:/etc/apache2/conf-enabled/000-files.conf:ro
- ports:
- - "9981:80"
- environment:
- MYSQL_HOST: db
- MYSQL_DATABASE: ${MYSQL_DATABASE}
- MYSQL_USER: ${MYSQL_USER}
- MYSQL_PASSWORD: ${MYSQL_PASSWORD}
- depends_on:
- db:
- condition: service_healthy
- restart: unless-stopped
- volumes:
- tas_councils_db_data:
- external: true
|