gnu-social/docker/tooling/docker-compose.yaml

71 lines
1.9 KiB
YAML

version: '3'
services:
php:
build: php
depends_on:
- db
- redis
volumes:
# Entrypoint
- ../php/entrypoint.sh:/entrypoint.sh
- ../db/wait_for_db.sh:/wait_for_db.sh
- ../social/install.sh:/var/entrypoint.d/0_social_install.sh
- ./coverage.sh:/var/tooling/coverage.sh
- ./phpstan.sh:/var/tooling/phpstan.sh
- ./acceptance.sh:/var/tooling/acceptance.sh
# Main files
- ../../:/var/www/social
- /var/www/social/docker # exclude docker folder
env_file:
- social.env
- db.env
command: /entrypoint.sh
nginx:
image: nginx:alpine
depends_on:
- php
restart: always
tty: false
volumes:
# Nginx
- ../nginx/nginx.conf:/var/nginx/social.conf
- ../nginx/domain.sh:/var/nginx/domain.sh
# Certbot
- ../certbot/www:/var/www/certbot
- ../certbot/.files:/etc/letsencrypt
# social
- ../../public:/var/www/social/public
env_file:
- ../bootstrap/bootstrap.env
command: /bin/sh -c '/var/nginx/domain.sh; nginx -g "daemon off;"'
pa11y:
build: pa11y
depends_on:
- nginx
volumes:
- ../../tests/screenshots:/screenshots
- ./accessibility.sh:/accessibility.sh
- ./generate_pa11y-ci-config.php:/generate_pa11y-ci-config.php
- /pa11y
cap_add:
- SYS_ADMIN
db:
image: postgres:alpine
environment:
- PGDATA=/var/lib/postgres/data
env_file:
- db.env
volumes:
- database:/var/lib/postgres/data
redis:
image: redis:alpine
tty: false
volumes:
database: