Files
interview-demo-code/docker-compose.yaml

57 lines
1.5 KiB
YAML

services:
web:
image: webdevops/php-apache-dev:7.4
platform: linux/amd64
volumes:
- "./src:/web"
- "./scripts:/scripts"
- "./module:/module"
- "/Users/nikitakiselev/code/msvlad.com/image/catalog/products:/web/upload/image/catalog/products"
ports:
- "8000:80"
restart: always
deploy:
resources:
limits:
memory: 512M
healthcheck:
test: [ "CMD", "curl" ,"-f", "http://localhost/index.php?route=extension/tgshop/handle&api_action=health" ]
interval: 10s
timeout: 5s
retries: 5
start_period: 5s
environment:
- WEB_DOCUMENT_ROOT=/web/upload
- PHP_DISPLAY_ERRORS=1
- XDEBUG_IDE_KEY=PHPSTORM
- XDEBUG_START_WITH_REQUEST=yes
- XDEBUG_CLIENT_HOST=host.docker.internal
- XDEBUG_CLIENT_PORT=9003
- XDEBUG_DISCOVER_CLIENT_HOST=false
- PHP_IDE_CONFIG=serverName=orbstack
- php.session.gc_maxlifetime=28800
- php.session.cookie_lifetime=0
depends_on:
- mysql
mysql:
image: mariadb:10.2.7
platform: linux/amd64
restart: always
environment:
- MYSQL_ROOT_PASSWORD=secret
- MYSQL_DATABASE=ocstore3
healthcheck:
test: [ "CMD", "mysqladmin" ,"ping", "-h", "localhost", "-u", "root", "-psecret" ]
timeout: 20s
retries: 10
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
- ./sql_dumps:/sql_dumps
- ./docker/mysql/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
volumes:
mysql_data: