forked from RuslanKostiv1/magento-docker
-
Notifications
You must be signed in to change notification settings - Fork 2
/
docker-compose.yml
116 lines (116 loc) · 3.05 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
version: '3.7'
services:
# https://devdocs.magento.com/guides/v2.4/install-gde/system-requirements.html
web:
image: nginx:1.25.1
hostname: web
container_name: web
volumes:
- code:/var/www
- ./etc/nginx/nginx.conf:/etc/nginx/nginx.conf
- ./etc/nginx/server.crt:/etc/nginx/server.crt
- ./etc/nginx/server.key:/etc/nginx/server.key
networks:
default:
aliases:
- magento.test
ports:
- "${WEB_PORT}:80"
- "${WEBS_PORT}:443"
depends_on:
- app
db:
image: mariadb:10.6.14
deploy:
resources:
reservations:
memory: 4096M
hostname: db
container_name: db
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
MYSQL_DATABASE: "magento"
volumes:
- ./etc/mysql/my.cnf:/etc/mysql/conf.d/mysql.cnf
ports:
- "${DB_PORT}:3306"
command: --default-authentication-plugin=mysql_native_password
app:
# image: slopukhov/php:8.2.12-fpm
# to re-build image use the following docker file:
build:
context: .
dockerfile: build/php/fpm
hostname: app
container_name: app
depends_on:
- db
- elastic
- redis
- rabbit
env_file:
- ./.env
volumes:
- code:/var/www
- ./.env:/tmp/.env
- ./etc/php/app/sendmail:/usr/local/bin/sendmail
- ./etc/php/tools/magento:/usr/local/bin/magento
- ./etc/php/tools:/usr/local/bin/magento2
- ./etc/php/php.ini:/usr/local/etc/php/php.ini
- ./etc/php/xdebug.ini:/usr/local/etc/php/conf.d/xdebug.ini
- ./etc/php/uopz.ini:/usr/local/etc/php/conf.d/uopz.ini
- ./etc/php/xhprof.ini:/usr/local/etc/php/conf.d/xhprof.ini
- ./etc/php/php-spx.ini:/usr/local/etc/php/conf.d/php-spx.ini
- ./etc/php/tideways.ini:/usr/local/etc/php/conf.d/tideways.ini
- ./etc/php/php-fpm.conf:/usr/local/etc/php-fpm.conf
environment:
#COMPOSER_HOME: /var/www/.composer
PHP_IDE_CONFIG: serverName=magento.test
elastic:
image: opensearchproject/opensearch:2.5.0
hostname: elastic
container_name: elastic
ports:
- "${ELASTIC_PORT}:9200"
environment:
- cluster.name=docker-cluster
- bootstrap.memory_lock=true
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms1024m -Xmx1024m"
- "OPENSEARCH_JAVA_OPTS=-Xms1024m -Xmx1024m"
- plugins.security.disabled=true
ulimits:
memlock:
soft: -1
hard: -1
redis:
image: redis:7.0.12
hostname: redis
container_name: redis
ports:
- "${REDIS_PORT}:6379"
rabbit:
image: rabbitmq:3.11.20
hostname: rabbitmq
container_name: rabbitmq
ports:
- "${RABBIT_PORT}:5672"
mftf:
image: seleniarm/standalone-chromium
hostname: mftf
container_name: mftf
ports:
- "${MFTF_PORT}:5900"
jmeter:
image: slopukhov/jmeter-gui:5.4.3
hostname: jmeter
container_name: jmeter
volumes:
- ./build/jmeter/test-scenario:/root/jmeter/
ports:
- "${JMETER_PORT}:5900"
networks:
default:
driver: bridge
volumes:
code: