mirror of
https://github.com/solidtime-io/solidtime.git
synced 2026-06-15 13:32:43 +01:00
# Conflicts: # app/Http/Controllers/Api/V1/TimeEntryController.php # app/Providers/JetstreamServiceProvider.php
128 lines
4.7 KiB
YAML
128 lines
4.7 KiB
YAML
services:
|
|
laravel.test:
|
|
build:
|
|
context: ./vendor/laravel/sail/runtimes/8.3
|
|
dockerfile: Dockerfile
|
|
args:
|
|
WWWGROUP: '${WWWGROUP}'
|
|
image: sail-8.3/app
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=${NETWORK_NAME}"
|
|
- "traefik.http.routers.solidtime.rule=Host(`${NGINX_HOST_NAME}`)"
|
|
- "traefik.http.routers.solidtime.entrypoints=web"
|
|
- "traefik.http.services.solidtime.loadbalancer.server.port=80"
|
|
- "traefik.http.routers.solidtime-https.rule=Host(`${NGINX_HOST_NAME}`)"
|
|
- "traefik.http.routers.solidtime-https.entrypoints=websecure"
|
|
- "traefik.http.routers.solidtime-https.tls=true"
|
|
extra_hosts:
|
|
- 'host.docker.internal:host-gateway'
|
|
ports:
|
|
- '${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}'
|
|
IGNITION_LOCAL_SITES_PATH: '${PWD}'
|
|
volumes:
|
|
- '.:/var/www/html'
|
|
networks:
|
|
- sail
|
|
- reverse-proxy
|
|
depends_on:
|
|
- pgsql
|
|
pgsql:
|
|
image: 'postgres:15'
|
|
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/data'
|
|
- './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
|
|
pgsql_test:
|
|
image: 'postgres:15'
|
|
environment:
|
|
PGPASSWORD: '${DB_PASSWORD:-secret}'
|
|
POSTGRES_DB: '${DB_DATABASE}'
|
|
POSTGRES_USER: '${DB_USERNAME}'
|
|
POSTGRES_PASSWORD: '${DB_PASSWORD:-secret}'
|
|
volumes:
|
|
- 'sail-pgsql-test:/var/lib/postgresql/data'
|
|
- './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
|
|
mailpit:
|
|
image: 'axllent/mailpit:latest'
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=${NETWORK_NAME}"
|
|
- "traefik.http.routers.solidtime-mailpit.rule=Host(`mail.${NGINX_HOST_NAME}`)"
|
|
- "traefik.http.routers.solidtime-mailpit.entrypoints=web"
|
|
- "traefik.http.services.solidtime-mailpit.loadbalancer.server.port=8025"
|
|
- "traefik.http.routers.solidtime-mailpit-https.rule=Host(`mail.${NGINX_HOST_NAME}`)"
|
|
- "traefik.http.routers.solidtime-mailpit-https.entrypoints=websecure"
|
|
- "traefik.http.routers.solidtime-mailpit-https.tls=true"
|
|
networks:
|
|
- sail
|
|
- reverse-proxy
|
|
playwright:
|
|
image: mcr.microsoft.com/playwright:v1.41.1-jammy
|
|
command: ['npx', 'playwright', 'test', '--ui-port=8080', '--ui-host=0.0.0.0']
|
|
working_dir: /src
|
|
extra_hosts:
|
|
- "solidtime.test:${REVERSE_PROXY_IP:-10.100.100.10}"
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.docker.network=${NETWORK_NAME}"
|
|
- "traefik.http.routers.playwright.rule=Host(`playwright.${NGINX_HOST_NAME}`)"
|
|
- "traefik.http.routers.playwright.entrypoints=web"
|
|
- "traefik.http.services.playwright.loadbalancer.server.port=8080"
|
|
- "traefik.http.routers.playwright-https.rule=Host(`playwright.${NGINX_HOST_NAME}`)"
|
|
- "traefik.http.routers.playwright-https.entrypoints=websecure"
|
|
- "traefik.http.routers.playwright-https.tls=true"
|
|
networks:
|
|
- sail
|
|
- reverse-proxy
|
|
volumes:
|
|
- '.:/src'
|
|
networks:
|
|
reverse-proxy:
|
|
name: "${NETWORK_NAME}"
|
|
external: true
|
|
sail:
|
|
driver: bridge
|
|
volumes:
|
|
sail-pgsql:
|
|
driver: local
|
|
sail-pgsql-test:
|
|
driver: local
|