toby/docker-compose.yml
Adrian Hopek 8f5f2b88f0
#1 - project skeleton (#7)
* #1 - project skeleton

* #1 - composer fix

* #1 - add app key to phpunit config

* #1 - change default session driver

* #1 - add EXTERNAL_WEBSERVER_PORT variable to .env.example
2022-01-10 13:28:18 +01:00

80 lines
1.7 KiB
YAML

version: '3.8'
services:
web:
image: nginx:1.21-alpine
container_name: toby-web
working_dir: /application
volumes:
- ./docker/dev/nginx/nginx.conf:/etc/nginx/conf.d/default.conf
- .:/application
networks:
- toby-dev
ports:
- ${EXTERNAL_WEBSERVER_PORT:-80}:80
restart: unless-stopped
depends_on:
- php
- database
php:
build:
context: docker/dev/php
args:
INSTALL_XDEBUG: ${DOCKER_INSTALL_XDEBUG:-false}
container_name: toby-php
working_dir: /application
user: ${CURRENT_UID:-1000}
volumes:
- .:/application
- ./docker/dev/php/php.ini:/usr/local/etc/php/conf.d/php.ini
networks:
- toby-dev
extra_hosts:
- host.docker.internal:host-gateway
restart: unless-stopped
database:
image: mysql:8.0
container_name: toby-db
environment:
- MYSQL_ROOT_PASSWORD=${DOCKER_DB_ROOT_PASSWORD}
- MYSQL_DATABASE=${DOCKER_DB_DATABASE}
- MYSQL_USER=${DOCKER_DB_USERNAME}
- MYSQL_PASSWORD=${DOCKER_DB_PASSWORD}
ports:
- ${DOCKER_DB_EXTERNAL_PORT:-3306}:3306
volumes:
- toby-mysql-data:/var/lib/mysql
networks:
- toby-dev
restart: unless-stopped
node:
image: node:17.2.0-alpine3.14
container_name: toby-node
working_dir: /application
volumes:
- .:/application
networks:
- toby-dev
restart: unless-stopped
mailhog:
image: mailhog/mailhog:v1.0.1
container_name: toby-mailhog
ports:
- ${MAIL_PORT}:1025
- ${MAILHOG_DASHBOARD_PORT}:8025
networks:
- toby-dev
restart: unless-stopped
networks:
toby-dev:
driver: bridge
volumes:
toby-mysql-data:
name: toby-mysql-data