-
Notifications
You must be signed in to change notification settings - Fork 1
/
docker-compose.yml
105 lines (97 loc) · 2.72 KB
/
docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# For more information: https://laravel.com/
services:
mensa.php.prod:
container_name: mensa.php.prod
pull_policy: always
build:
dockerfile: Dockerfile.prod
image: ghcr.io/vslcatena/mensa:prod
extra_hosts:
- 'host.docker.internal:host-gateway'
ports:
- '${APP_PORT:-80}:80'
volumes:
- config:/var/www/html/conf.d
networks:
- net
depends_on:
- mensa.db
profiles:
- prod
mensa.php:
container_name: mensa.php
pull_policy: missing
build:
context: ./vendor/laravel/sail/runtimes/${SAIL_VERSION:-8.1}
dockerfile: Dockerfile
args:
WWWGROUP: '${WWWGROUP}'
image: ghcr.io/vslcatena/mensa:sail-${SAIL_VERSION:-8.1}-app
extra_hosts:
- 'host.docker.internal:host-gateway'
profiles:
- dev
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:
- net
depends_on:
- mensa.db
mensa.db:
hostname: db
container_name: mensa.db
image: 'mariadb:10'
ports:
- '${FORWARD_DB_PORT:-3306}:3306'
environment:
MYSQL_ROOT_PASSWORD: '${DB_ROOT_PASSWORD}'
MYSQL_ROOT_HOST: "%"
MYSQL_DATABASE: '${DB_DATABASE}'
MYSQL_USER: '${DB_USERNAME}'
MYSQL_PASSWORD: '${DB_PASSWORD}'
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
volumes:
- 'db_data:/var/lib/mysql'
networks:
- net
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-p${DB_PASSWORD}"]
retries: 3
timeout: 5s
#phpmyadmin
mensa.phpmyadmin:
image: ghcr.io/linuxserver/phpmyadmin
hostname: phpmyadmin
container_name: mensa.phpmyadmin
profiles:
- dev
environment:
PMA_HOST: db
PMA_USER: root
PMA_PASSWORD: '${DB_PASSWORD}'
ports:
- "8181:80"
networks:
- net
networks:
net:
driver: bridge
ipam:
driver: default
config:
- subnet: ${APP_NET_SUBNET:-192.168.8.224}/29
driver_opts:
com.docker.network.bridge.name: mensa_net
volumes:
db_data:
driver: local
config:
driver: local