kamilcraft-api/docker-compose.yml
2023-08-01 18:13:45 +02:00

73 lines
1.7 KiB
YAML

version: "3.8"
services:
nginx:
image: nginx:1.21-alpine
container_name: kamilcraft-api_www
working_dir: /application
ports:
- ${EXTERNAL_WEBSERVER_PORT:-80}:80
volumes:
- ./environment/dev/nginx/default.conf:/etc/nginx/conf.d/default.conf
- .:/application
networks:
- kamilcraft
depends_on:
- php
- db
php:
build:
context: environment/dev/php
container_name: kamilcraft-api_php
working_dir: /application
user: ${CURRENT_UID:-1000}
volumes:
- .:/application
- ./environment/dev/php/php.ini:/usr/local/etc/php/conf.d/php.ini
networks:
- kamilcraft
extra_hosts:
- host.docker.internal:host-gateway
restart: unless-stopped
npm:
build:
context: environment/dev/npm
container_name: kamilcraft-api_node
working_dir: /application
entrypoint: [ 'npm' ]
ports:
- '3000:3000'
- '${VITE_PORT:-3001}:${VITE_PORT:-3001}'
volumes:
- .:/application
networks:
- kamilcraft
db:
image: mysql:8.0
container_name: kamilcraft-api_db
ports:
- '${DB_PORT}:3306'
environment:
MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
MYSQL_DATABASE: '${DB_DATABASE}'
MYSQL_USER: '${DB_USERNAME}'
MYSQL_PASSWORD: '${DB_PASSWORD}'
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
volumes:
- 'mysql-db-data:/var/lib/mysql'
networks:
- kamilcraft
restart: unless-stopped
networks:
kamilcraft:
driver: bridge
volumes:
mysql-db-data:
name: kamilcraft-api-mysql-data
driver: local