-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathdocker-compose.yml
executable file
·134 lines (125 loc) · 3.91 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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
services:
nginx:
container_name: ${NGINX_CONTAINER_NAME:-nginx}
restart: on-failure
build:
context: .
dockerfile: ./docker/nginx/Dockerfile
volumes:
- ./app/:/var/www/symfony:cached
- ./var/log/nginx/:/var/log/nginx:delegated
ports:
- "8000:80"
- "1443:443"
depends_on:
- ${PHP_CONTAINER_NAME:-php}
networks:
- symfony
php:
container_name: ${PHP_CONTAINER_NAME:-php}
user: ${DOCKER_HOST_UID:-1000}:${DOCKER_HOST_GID:-1000}
restart: on-failure
build:
context: .
dockerfile: ./docker/php-fpm/Dockerfile
environment:
PHP_IDE_CONFIG: 'serverName=localhost'
extra_hosts:
- "host.docker.internal:host-gateway"
volumes:
- ./app/:/var/www/symfony:cached
- ./app/var/coverage:/opt/phpstorm-coverage/
depends_on:
- ${DATABASE_CONTAINER_NAME:-database}
networks:
- symfony
database:
container_name: ${DATABASE_CONTAINER_NAME:-database}
user: ${DOCKER_HOST_UID:-1000}:${DOCKER_HOST_GID:-1000}
restart: on-failure
build:
context: .
dockerfile: ./docker/database/Dockerfile
command: ["--mysql-native-password=ON"]
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: symfony
MYSQL_USER: dbuser
MYSQL_PASSWORD: password
volumes:
- ./docker/database/data:/var/lib/mysql
- ./docker/database/init:/docker-entrypoint-initdb.d
ports:
- "13306:3306"
networks:
- symfony
localstack:
container_name: ${DATABASE_CONTAINER_NAME:-localstack}
user: ${DOCKER_HOST_UID:-1000}:${DOCKER_HOST_GID:-1000}
image: localstack/localstack:4.0
environment:
SERVICES: lambda,s3,sns,sqs
volumes:
- ./docker/localstack/data:/var/lib/localstack
- /var/run/docker.sock:/var/run/docker.sock
ports:
- "4566:4566"
- "4510-4559:4510-4559"
networks:
- symfony
mailhog:
container_name: ${MAILHOG_CONTAINER_NAME:-mailhog}
user: ${DOCKER_HOST_UID:-1000}:${DOCKER_HOST_GID:-1000}
restart: on-failure
image: mailhog/mailhog
ports:
- "1025:1025"
- "8025:8025"
networks:
- symfony
redis:
container_name: ${REDIS_CONTAINER_NAME:-redis}
restart: on-failure
image: redis:alpine3.20
ports:
- "16379:6379"
networks:
- symfony
rabbit_mq:
container_name: ${RABBIT_MQ_CONTAINER_NAME:-rabbit_mq}
restart: on-failure
image: rabbitmq:3.9.29-management-alpine
ports:
- "5672:5672"
- "15672:15672"
networks:
- symfony
elasticsearch:
container_name: ${ELASTICSEARCH_CONTAINER_NAME:-elasticsearch}
user: ${DOCKER_HOST_UID:-1000}:${DOCKER_HOST_GID:-1000}
restart: on-failure
image: elasticsearch:8.5.2
volumes:
- ./docker/elasticsearch/data:/usr/share/elasticsearch/data
environment:
- discovery.type=single-node
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms2g -Xmx2g"
- "ELASTIC_PASSWORD=password"
ports:
- "9200:9200"
networks:
- symfony
keycloak:
container_name: ${KEYCLOAK_CONTAINER_NAME:-keycloak}
image: quay.io/keycloak/keycloak:26.0
command: [ "start-dev" ]
environment:
KC_BOOTSTRAP_ADMIN_USERNAME: admin
KC_BOOTSTRAP_ADMIN_PASSWORD: admin
ports:
- "8080:8080"
networks:
- symfony
networks:
symfony: