You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
1.4 KiB
YAML

services:
nginx:
build:
context: .
dockerfile: docker/nginx/Dockerfile
ports:
- "8888:80"
volumes:
- ./docker/config/nginx.conf:/etc/nginx/nginx.conf:ro
- ./src:/var/www/html/:z
depends_on:
- php_sender
php_sender:
build:
context: .
dockerfile: docker/php/Dockerfile
user: $UID
ports:
- "9000"
volumes:
- ./docker/config/php.ini:/usr/local/etc/php/php.ini
- ./src:/var/www/html/:z
depends_on:
- php_receiver
- composer
php_receiver:
build:
context: .
dockerfile: docker/php_receiver/Dockerfile
command: "php /app/receive.php"
volumes:
- ./src:/app
depends_on:
composer:
condition: service_started
rabbitmq:
condition: service_healthy
links:
- rabbitmq
scale: 5
rabbitmq:
build:
context: .
dockerfile: docker/rabbitmq/Dockerfile
ports:
- "15672:15672"
- "5672:5672"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:15672"]
interval: 30s
timeout: 10s
retries: 5
volumes:
- rabbitmq-data:/var/lib/rabbitmq
composer:
build: docker/composer
user: $UID
volumes:
- ./src:/app
command: composer install
environment:
- HOME=/home/composer
working_dir: /app
volumes:
rabbitmq-data: