# This file defines the production settings. It is overwritten by docker-compose.override.yml, # which defines the development settings. The override.yml is loaded by default. Therefore it # is required to explicitly define if you want an production build: # > docker-compose -f docker-compose.yml up version: "3.4" services: ######################################################## # WEBAPP ############################################### ######################################################## # Wolle # webapp: # image: ocelotsocialnetwork/webapp:latest # build: # context: ./webapp # target: production # networks: # - external-net # depends_on: # - backend # ports: # - 3000:3000 # # Storybook: Todo externalize, its not working anyways # # - 3002:3002 # environment: # # Envs used in Dockerfile # # - DOCKER_WORKDIR="/app" # # - PORT="3000" # - BUILD_DATE # - BUILD_VERSION # - BUILD_COMMIT # - NODE_ENV="production" # # Application only envs # - HOST=0.0.0.0 # This is nuxt specific, alternative value is HOST=webapp # - GRAPHQL_URI=http://backend:4000 # env_file: # - ./webapp/.env ######################################################## # BACKEND ############################################## ######################################################## # Wolle # backend: # image: ocelotsocialnetwork/backend:latest # build: # context: ./backend # target: production # networks: # - external-net # - internal-net # depends_on: # - neo4j # ports: # - 4000:4000 # volumes: # - backend_uploads:/app/public/uploads # environment: # # Envs used in Dockerfile # # - DOCKER_WORKDIR="/app" # # - PORT="4000" # - BUILD_DATE # - BUILD_VERSION # - BUILD_COMMIT # - NODE_ENV="production" # # Application only envs # - DEBUG=false # - NEO4J_URI=bolt://neo4j:7687 # - GRAPHQL_URI=http://backend:4000 # - CLIENT_URI=http://webapp:3000 # env_file: # - ./backend/.env ######################################################## # NEO4J ################################################ ######################################################## # Wolle # neo4j: # image: ocelotsocialnetwork/neo4j:latest # build: # context: ./neo4j # # community edition 👆🏼, because we have no enterprise licence 👇🏼 at the moment # target: community # networks: # - internal-net # ports: # - 7687:7687 # volumes: # - neo4j_data:/data # environment: # # TODO: This sounds scary for a production environment # - NEO4J_AUTH=none # - NEO4J_dbms_security_procedures_unrestricted=algo.*,apoc.* # # Uncomment following line for Neo4j Enterprise version instead of Community version # # TODO: clarify if that is the only thing needed to unlock the Enterprise version # # - NEO4J_ACCEPT_LICENSE_AGREEMENT=yes # # TODO: Remove the playground from production ######################################################## # MAINTENANCE ########################################## ######################################################## maintenance: image: ocelotsocialnetwork/maintenance:latest build: # TODO: Separate from webapp, this must be independent context: ./webapp dockerfile: Dockerfile.maintenance networks: - external-net ports: - 5000:80 networks: external-net: internal-net: internal: true # Wolle # volumes: # backend_uploads: # neo4j_data: