laravel-vue-file-share/docker-compose.yml

82 lines
2.4 KiB
YAML

# For more information: https://laravel.com/docs/sail
version: "3"
services:
laravel.test:
build:
context: ./docker/7.4
dockerfile: Dockerfile
args:
WWWGROUP: "${WWWGROUP}"
image: sail-7.4/app
extra_hosts:
- "host.docker.internal:host-gateway"
ports:
- "${APP_PORT:-80}:80"
- "${VITE_PORT:-5173}:${VITE_PORT:-5173}"
environment:
WWWUSER: "${WWWUSER}"
LARAVEL_SAIL: 1
XDEBUG_MODE: "${SAIL_XDEBUG_MODE:-off}"
XDEBUG_CONFIG: "${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}"
volumes:
- ".:/var/www/html"
networks:
- sail
depends_on:
- mariadb
- meilisearch
- mailpit
mariadb:
image: "mariadb:10"
ports:
- "${FORWARD_DB_PORT:-3306}:3306"
environment:
MYSQL_ROOT_PASSWORD: "${DB_PASSWORD}"
MYSQL_ROOT_HOST: "%"
MYSQL_DATABASE: "${DB_DATABASE}"
MYSQL_USER: "${DB_USERNAME}"
MYSQL_PASSWORD: "${DB_PASSWORD}"
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
volumes:
- "sail-mariadb:/var/lib/mysql"
- "./vendor/laravel/sail/database/mysql/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create-testing-database.sh"
networks:
- sail
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
meilisearch:
image: "getmeili/meilisearch:latest"
ports:
- "${FORWARD_MEILISEARCH_PORT:-7700}:7700"
volumes:
- "sail-meilisearch:/meili_data"
networks:
- sail
healthcheck:
test:
[
"CMD",
"wget",
"--no-verbose",
"--spider",
"http://localhost:7700/health",
]
retries: 3
timeout: 5s
mailpit:
image: "axllent/mailpit:latest"
ports:
- "${FORWARD_MAILPIT_PORT:-1025}:1025"
- "${FORWARD_MAILPIT_DASHBOARD_PORT:-8025}:8025"
networks:
- sail
networks:
sail:
driver: bridge
volumes:
sail-mariadb:
driver: local
sail-meilisearch:
driver: local