Docker-AdvancedFeaturesSecu.../docker-compose.yml

63 lines
1.3 KiB
YAML

services:
app:
build:
context: .
dockerfile: Dockerfile
container_name: sijago_app
restart: unless-stopped
working_dir: /var/www
volumes:
- .:/var/www
ports:
- "8000:8000"
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
environment:
DB_CONNECTION: pgsql
DB_HOST: db
DB_PORT: 5432
DB_DATABASE: sijago
DB_USERNAME: sijago_user
DB_PASSWORD: secret
CACHE_DRIVER: redis
REDIS_HOST: redis
command: sh -c "
until pg_isready -h db -p 5432; do sleep 2; done;
php artisan migrate --force;
php artisan serve --host=0.0.0.0 --port=8000; "
db:
image: postgres:13
container_name: sijago_db
restart: unless-stopped
environment:
POSTGRES_DB: sijago
POSTGRES_USER: sijago_user
POSTGRES_PASSWORD: secret
ports:
- "5432:5432"
volumes:
- db-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U sijago_user"]
interval: 5s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
container_name: sijago_redis
restart: unless-stopped
ports:
- "6379:6379"
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 5s
retries: 5
volumes:
db-data: