mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-12 23:35:50 +00:00
156 lines
5.1 KiB
YAML
156 lines
5.1 KiB
YAML
version: "3.4"
|
|
|
|
services:
|
|
########################################################
|
|
# FRONTEND #############################################
|
|
########################################################
|
|
frontend:
|
|
image: gradido/frontend:development
|
|
build:
|
|
target: development
|
|
networks:
|
|
- external-net
|
|
environment:
|
|
- NODE_ENV="development"
|
|
# - DEBUG=true
|
|
- NUXT_BUILD=/tmp/nuxt # avoid file permission issues when `rm -rf .nuxt/`
|
|
volumes:
|
|
# This makes sure the docker container has its own node modules.
|
|
# Therefore it is possible to have a different node version on the host machine
|
|
- frontend_node_modules:/app/node_modules
|
|
# bind the local folder to the docker to allow live reload
|
|
- ./frontend:/app
|
|
|
|
########################################################
|
|
# BACKEND ##############################################
|
|
########################################################
|
|
backend:
|
|
image: gradido/backend:development
|
|
build:
|
|
target: development
|
|
networks:
|
|
- external-net
|
|
- internal-net
|
|
environment:
|
|
- NODE_ENV="development"
|
|
volumes:
|
|
# This makes sure the docker container has its own node modules.
|
|
# Therefore it is possible to have a different node version on the host machine
|
|
- backend_node_modules:/app/node_modules
|
|
# bind the local folder to the docker to allow live reload
|
|
- ./backend:/app
|
|
|
|
########################################################
|
|
# DATABASE ##############################################
|
|
########################################################
|
|
database:
|
|
# we always run on prouction here since else the service lingers
|
|
# feel free to change this behaviour if it seems useful
|
|
#image: gradido/database:test_up
|
|
#build:
|
|
# target: test_up
|
|
#networks:
|
|
# - external-net
|
|
# - internal-net
|
|
environment:
|
|
- NODE_ENV="development"
|
|
volumes:
|
|
# This makes sure the docker container has its own node modules.
|
|
# Therefore it is possible to have a different node version on the host machine
|
|
- database_node_modules:/app/node_modules
|
|
- database_build:/app/build
|
|
# bind the local folder to the docker to allow live reload
|
|
- ./database:/app
|
|
|
|
#########################################################
|
|
## LOGIN SERVER #########################################
|
|
#########################################################
|
|
login-server:
|
|
build:
|
|
dockerfile: Dockerfiles/ubuntu/Dockerfile.debug
|
|
security_opt:
|
|
- seccomp:unconfined
|
|
cap_add:
|
|
- SYS_PTRACE
|
|
volumes:
|
|
- ./logs:/var/log/grd_login
|
|
- ./login_server/src:/code/src
|
|
- ./login_server/dependencies:/code/dependencies
|
|
- ./login_server/scripts:/code/scripts
|
|
- ./configs/login_server:/etc/grd_login
|
|
- login_build_ubuntu_3.1:/code/build
|
|
|
|
|
|
#########################################################
|
|
## COMMUNITY SERVER (cakephp with php-fpm) ##############
|
|
#########################################################
|
|
community-server:
|
|
build:
|
|
context: .
|
|
target: community_server
|
|
dockerfile: ./community_server/Dockerfile
|
|
depends_on:
|
|
- mariadb
|
|
networks:
|
|
- internal-net
|
|
- external-net
|
|
volumes:
|
|
- ./community_server/config/php-fpm/php-ini-overrides.ini:/etc/php/7.4/fpm/conf.d/99-overrides.ini
|
|
- ./community_server/src:/var/www/cakephp/src
|
|
|
|
#########################################################
|
|
## MARIADB ##############################################
|
|
#########################################################
|
|
mariadb:
|
|
networks:
|
|
- internal-net
|
|
- external-net
|
|
|
|
#########################################################
|
|
## NGINX ################################################
|
|
#########################################################
|
|
nginx:
|
|
depends_on:
|
|
- frontend
|
|
- community-server
|
|
- login-server
|
|
volumes:
|
|
- ./logs/nginx:/var/log/nginx
|
|
|
|
#########################################################
|
|
## PHPMYADMIN ###########################################
|
|
#########################################################
|
|
phpmyadmin:
|
|
image: phpmyadmin
|
|
environment:
|
|
- PMA_ARBITRARY=1
|
|
#restart: always
|
|
ports:
|
|
- 8074:80
|
|
networks:
|
|
- internal-net
|
|
- external-net
|
|
volumes:
|
|
- /sessions
|
|
|
|
#########################################################
|
|
## skeema for updating dbs if changes happend ###########
|
|
#########################################################
|
|
skeema:
|
|
build:
|
|
context: .
|
|
dockerfile: ./skeema/Dockerfile
|
|
target: skeema_dev_run
|
|
depends_on:
|
|
- mariadb
|
|
networks:
|
|
- internal-net
|
|
volumes:
|
|
- ./login_server/skeema/gradido_login:/skeema/gradido_login
|
|
|
|
volumes:
|
|
frontend_node_modules:
|
|
backend_node_modules:
|
|
database_node_modules:
|
|
database_build:
|
|
login_build_ubuntu_3.1: |