DONE: first init

This commit is contained in:
2026-10-26 10:03:02 +08:00
parent a2ee286c1a
commit 8a7907a87c
32 changed files with 553 additions and 51 deletions
+45 -45
View File
@@ -1,61 +1,36 @@
services:
laravel.test:
build:
context: './vendor/laravel/sail/runtimes/8.5'
context: ./vendor/laravel/sail/runtimes/8.5
dockerfile: Dockerfile
args:
WWWGROUP: '${WWWGROUP}'
image: 'sail-8.5/app'
WWWGROUP: "${WWWGROUP}"
image: sail-8.5/app
extra_hosts:
- 'host.docker.internal:host-gateway'
- "host.docker.internal:host-gateway"
ports:
- '${APP_PORT:-80}:80'
- '${VITE_PORT:-5173}:${VITE_PORT:-5173}'
- "${APP_PORT:-80}:80"
- "${VITE_PORT:-5173}:${VITE_PORT:-5173}"
environment:
WWWUSER: '${WWWUSER}'
WWWUSER: "${WWWUSER}"
LARAVEL_SAIL: 1
XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'
IGNITION_LOCAL_SITES_PATH: '${PWD}'
XDEBUG_MODE: "${SAIL_XDEBUG_MODE:-off}"
XDEBUG_CONFIG: "${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}"
IGNITION_LOCAL_SITES_PATH: "${PWD}"
volumes:
- '.:/var/www/html'
- ".:/var/www/html"
networks:
- sail
depends_on:
- mysql
- redis
- mailpit
mysql:
image: 'mysql:8.4'
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: 1
MYSQL_EXTRA_OPTIONS: '${MYSQL_EXTRA_OPTIONS:-}'
volumes:
- 'sail-mysql:/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
- pgsql
redis:
image: 'redis:alpine'
image: "redis:alpine"
ports:
- '${FORWARD_REDIS_PORT:-6379}:6379'
- "${FORWARD_REDIS_PORT:-6379}:6379"
volumes:
- 'sail-redis:/data'
- "sail-redis:/data"
networks:
- sail
healthcheck:
@@ -66,17 +41,42 @@ services:
retries: 3
timeout: 5s
mailpit:
image: 'axllent/mailpit:latest'
image: "axllent/mailpit:latest"
ports:
- '${FORWARD_MAILPIT_PORT:-1025}:1025'
- '${FORWARD_MAILPIT_DASHBOARD_PORT:-8025}:8025'
- "${FORWARD_MAILPIT_PORT:-1025}:1025"
- "${FORWARD_MAILPIT_DASHBOARD_PORT:-8025}:8025"
networks:
- sail
pgsql:
image: "postgres:18-alpine"
ports:
- "${FORWARD_DB_PORT:-5432}:5432"
environment:
PGPASSWORD: "${DB_PASSWORD:-secret}"
POSTGRES_DB: "${DB_DATABASE}"
POSTGRES_USER: "${DB_USERNAME}"
POSTGRES_PASSWORD: "${DB_PASSWORD:-secret}"
volumes:
- "sail-pgsql:/var/lib/postgresql"
- "./vendor/laravel/sail/database/pgsql/create-testing-database.sql:/docker-entrypoint-initdb.d/10-create-testing-database.sql"
networks:
- sail
healthcheck:
test:
- CMD
- pg_isready
- "-q"
- "-d"
- "${DB_DATABASE}"
- "-U"
- "${DB_USERNAME}"
retries: 3
timeout: 5s
networks:
sail:
driver: bridge
volumes:
sail-mysql:
driver: local
sail-redis:
driver: local
sail-pgsql:
driver: local