version: '3' services: postgres: image: postgres:10 restart: unless-stopped volumes: - postgresdata:/var/lib/postgresql/data - ./config/sql:/config/sql - ./docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh environment: POSTGRES_DB: invidious POSTGRES_PASSWORD: kemal POSTGRES_USER: kemal healthcheck: test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"] invidious: build: context: . dockerfile: docker/Dockerfile restart: unless-stopped ports: - "127.0.0.1:3000:3000" environment: # Adapted from ./config/config.yml INVIDIOUS_CONFIG: | log_level: Info channel_threads: 1 channel_refresh_interval: 30m check_tables: true feed_threads: 1 db: user: kemal password: kemal host: postgres port: 5432 dbname: invidious full_refresh: false https_only: false domain: healthcheck: test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1 interval: 30s timeout: 5s retries: 2 depends_on: - postgres volumes: postgresdata: