mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-12 23:35:58 +00:00
102 lines
4.2 KiB
YAML
102 lines
4.2 KiB
YAML
version: "3.4"
|
|
|
|
services:
|
|
|
|
########################################################
|
|
# WEBAPP ###############################################
|
|
########################################################
|
|
webapp:
|
|
# name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there
|
|
image: ocelotsocialnetwork/webapp:local-development
|
|
build:
|
|
target: development
|
|
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
|
|
- webapp_node_modules:/app/node_modules
|
|
# bind the local folder to the docker to allow live reload
|
|
- ./webapp:/app
|
|
|
|
########################################################
|
|
# FRONTEND #############################################
|
|
########################################################
|
|
frontend:
|
|
# name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there
|
|
image: ocelotsocialnetwork/frontend:local-development
|
|
build:
|
|
target: development
|
|
environment:
|
|
- NODE_ENV=development
|
|
ports:
|
|
# port required for npm run dev
|
|
- 24678:24678
|
|
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:
|
|
# name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there
|
|
image: ocelotsocialnetwork/backend:local-development
|
|
build:
|
|
target: development
|
|
environment:
|
|
- NODE_ENV="development"
|
|
- DEBUG=true
|
|
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
|
|
|
|
########################################################
|
|
# MAINTENANCE ##########################################
|
|
########################################################
|
|
maintenance:
|
|
# name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there
|
|
image: ocelotsocialnetwork/maintenance:local-development
|
|
|
|
########################################################
|
|
# NEO4J ################################################
|
|
########################################################
|
|
neo4j:
|
|
# name the image so that it cannot be found in a DockerHub repository, otherwise it will not be built locally from the 'dockerfile' but pulled from there
|
|
image: ocelotsocialnetwork/neo4j-community:local-development
|
|
ports:
|
|
# Also expose the neo4j query browser
|
|
- 7474:7474
|
|
networks:
|
|
# So we can access the neo4j query browser from our host machine
|
|
- external-net
|
|
|
|
########################################################
|
|
# MAILSERVER TO FAKE SMTP ##############################
|
|
########################################################
|
|
mailserver:
|
|
image: djfarrelly/maildev
|
|
container_name: mailserver
|
|
ports:
|
|
- 1080:80
|
|
networks:
|
|
- external-net
|
|
|
|
# the following network from the main YAML gives the warning `WARNING: Some networks were defined but are not used by any service: internal-net` and should be removed
|
|
# but removing is not possible yet, it seems: https://github.com/docker/compose/issues/3729#issuecomment-623154878
|
|
# networks:
|
|
# internal-net:
|
|
|
|
volumes:
|
|
webapp_node_modules:
|
|
frontend_node_modules:
|
|
backend_node_modules:
|