Files
Inventory/docker-compose.yml

78 lines
1.6 KiB
YAML

version: '3.8'
services:
nginx:
build:
context: .
dockerfile: Dockerfile.nginx
ports:
- "8080:80"
depends_on:
- php
volumes:
- ./storage/uploads:/var/www/html/storage/uploads:ro
networks:
- inventory-network
php:
build:
context: .
dockerfile: Dockerfile.php
volumes:
- ./storage/uploads:/var/www/html/storage/uploads
- ./storage/logs:/var/www/html/storage/logs
depends_on:
db:
condition: service_healthy
environment:
- DB_HOST=${DB_HOST}
- DB_PORT=${DB_PORT}
- DB_NAME=${DB_NAME}
- DB_USER=${DB_USER}
- DB_PASS=${DB_PASS}
- APP_ENV=${APP_ENV}
- APP_URL=${APP_URL}
- SESSION_SECURE=${SESSION_SECURE}
networks:
- inventory-network
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASS}
MYSQL_DATABASE: ${DB_NAME}
MYSQL_USER: ${DB_USER}
MYSQL_PASSWORD: ${DB_PASS}
volumes:
- mysql_data:/var/lib/mysql
- ./database/init:/docker-entrypoint-initdb.d
ports:
- "3306:3306"
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p${DB_ROOT_PASS}"]
timeout: 20s
retries: 10
networks:
- inventory-network
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
environment:
PMA_HOST: db
PMA_PORT: 3306
PMA_USER: ${DB_USER}
PMA_PASSWORD: ${DB_PASS}
ports:
- "8081:80"
depends_on:
- db
networks:
- inventory-network
volumes:
mysql_data:
networks:
inventory-network:
driver: bridge