layerindex-web/docker-compose.yml
Paul Eggleton 3bc7dce405 docker: set mariadb wait_timeout to upstream default
The default wait_timeout we are getting from the official MariaDB
container (as inherited from Debian) is 600s, which is too short if you
walk away while the setup script is running and it stops on the
"manage.py createsuperuser" step for longer than 10 minutes. We don't
really need this timeout, so just use the upstream default of 28800 (8h)
instead.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2019-07-17 11:30:56 +12:00

75 lines
2.0 KiB
YAML

version: '3'
services:
layersdb:
image: mariadb:10.2
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --wait_timeout=28800
environment:
- "MYSQL_DATABASE=layersdb"
- "MYSQL_ROOT_PASSWORD=testingpw"
container_name: layersdb
layersapp:
depends_on:
- layersdb
build: .
image: halstead/layerindex-app
hostname: localhost
volumes:
- layersmeta:/opt/workdir
environment:
#- "SECRET_KEY=<set this here>"
- "DATABASE_PASSWORD=testingpw"
- "DATABASE_HOST=layersdb"
#- "EMAIL_HOST=<set this here>"
#- "DEBUG=1"
container_name: layersapp
layersweb:
depends_on:
- layersapp
build:
context: .
dockerfile: Dockerfile.web
image: halstead/layerindex-web
hostname: localhost
ports:
- "8080:80"
## For production you want these instead
# - "80:80"
# - "443:443"
volumes:
- layersstatic:/usr/share/nginx/html
- ./docker/certs:/opt/cert
- certbotwww:/var/www/certbot:z
command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"
container_name: layersweb
layersrabbit:
image: rabbitmq:alpine
container_name: layersrabbit
layerscelery:
depends_on:
- layersdb
- layersapp
- layersrabbit
image: halstead/layerindex-app
volumes:
- layersmeta:/opt/workdir
environment:
#- "SECRET_KEY=<set this here>"
- "DATABASE_PASSWORD=testingpw"
- "DATABASE_HOST=layersdb"
#- "EMAIL_HOST=<set this here>"
#- "DEBUG=1"
container_name: layerscelery
command: /usr/local/bin/celery -A layerindex.tasks worker --loglevel=info --workdir=/opt/layerindex
#layerscertbot:
# image: certbot/certbot
# volumes:
# - ./docker/certs:/opt/cert
# - certbotwww:/var/www/certbot:z
# container_name: layerscertbot
# entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"
volumes:
layersmeta:
layersstatic:
certbotwww: