version: '3' services: nginx: image: nginx:latest # ports: # - 80:80 # - 443:443 depends_on: - web environment: - VIRTUAL_HOST=good.franv.site - LETSENCRYPT_HOST=good.franv.site - VIRTUAL_PORT=8001 networks: - main - acme-companion_proxy-tier volumes: - ./nginx:/etc/nginx/conf.d # - ./certbot/conf:/etc/nginx/ssl # - ./certbot/data:/var/www/certbot - static_volume:/app/static - media_volume:/app/images # certbot: # image: certbot/certbot:latest # command: certonly --webroot --webroot-path=/var/www/certbot --email ${EMAIL} --agree-tos --no-eff-email -d ${DOMAIN} -d www.${DOMAIN} # #command: renew --webroot --webroot-path /var/www/certbot # volumes: # - ./certbot/conf:/etc/letsencrypt # - ./certbot/logs:/var/log/letsencrypt # - ./certbot/data:/var/www/certbot db: build: postgres-docker env_file: .env entrypoint: /bookwyrm-entrypoint.sh command: cron postgres volumes: - pgdata:/var/lib/postgresql/data - backups:/backups networks: - main web: build: . env_file: .env command: gunicorn bookwyrm.wsgi:application --bind 0.0.0.0:8000 volumes: - .:/app - static_volume:/app/static - media_volume:/app/images depends_on: - db - celery_worker - redis_activity networks: - main # ports: # - 8000:8000 redis_activity: image: redis command: redis-server --requirepass ${REDIS_ACTIVITY_PASSWORD} --appendonly yes --port ${REDIS_ACTIVITY_PORT} volumes: - ./redis.conf:/etc/redis/redis.conf - redis_activity_data:/data env_file: .env # environment: # - VIRTUAL_HOST=good.franv.site # - LETSENCRYPT_HOST=good.franv.site # - VIRTUAL_PORT=8000 networks: - main - acme-companion_proxy-tier restart: on-failure redis_broker: image: redis command: redis-server --requirepass ${REDIS_BROKER_PASSWORD} --appendonly yes --port ${REDIS_BROKER_PORT} volumes: - ./redis.conf:/etc/redis/redis.conf - redis_broker_data:/data env_file: .env # ports: # - 6379:6379 networks: - main restart: on-failure celery_worker: env_file: .env build: . networks: - main command: celery -A celerywyrm worker -l info -Q high_priority,medium_priority,low_priority volumes: - .:/app - static_volume:/app/static - media_volume:/app/images depends_on: - db - redis_broker restart: on-failure flower: build: . command: flower -A celerywyrm env_file: .env volumes: - .:/app networks: - main depends_on: - db - redis_broker restart: on-failure # ports: # - 8888:8888 volumes: pgdata: backups: static_volume: media_volume: redis_broker_data: redis_activity_data: networks: main: acme-companion_proxy-tier: external: true