# This docker file is for development. # It connects to debugging ports that help you debug the app. version: '3.7' x-common-variables: &common-variables IS_SAAS_SERVICE: ${IS_SAAS_SERVICE} services: ##IMPORTANT: ## This container is an SMTP server used to send emails. ## Setup private, tls_cert and tls_key keys before running this part haraka: ports: - '2525:2525' build: network: host context: ./Haraka args: PORT: '2525' env_file: - ./Haraka/.env postgres: image: postgres:latest restart: always env_file: - ./Postgres/.env ports: - '5400:5432' volumes: - postgres:/var/lib/postgresql/data mail: ports: - 9110:9229 # Debugging port. - 3190:3190 build: network: host context: . dockerfile: ./Mail/Dockerfile.dev env_file: - ./Common/.env - ./CommonServer/.env - ./Mail/.env environment: *common-variables depends_on: - haraka - postgres volumes: - ./Mail:/usr/src/app # Use node modules of the container and not host system. # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder - /usr/src/app/node_modules/ - ./Common:/usr/src/Common - ./CommonServer:/usr/src/CommonServer - ./CommonUI:/usr/src/CommonUI - /usr/src/Common/node_modules/ - /usr/src/CommonUI/node_modules/ - /usr/src/CommonServer/node_modules/ saml: image: kenchan0130/simplesamlphp ports: - 9876:8080 - 8443:8443 env_file: - ./Common/.env - ./CommonServer/.env - ./SAML/.env volumes: - ./SAML/users.php:/var/www/simplesamlphp/config/authsources.php redis: image: redis:7.0.3 ports: - '6379:6379' command: redis-server /usr/local/etc/redis/redis.conf env_file: - ./Redis/.env volumes: - ./Redis/redis.conf:/usr/local/etc/redis/redis.conf accounts: ports: - '3003:3003' build: network: host context: . dockerfile: ./Accounts/Dockerfile.dev env_file: - ./Common/.env - ./CommonUI/.env - ./Accounts/.env environment: *common-variables depends_on: - identity volumes: - ./Accounts:/usr/src/app # Use node modules of the container and not host system. # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder - /usr/src/app/node_modules/ - ./Common:/usr/src/Common - ./CommonServer:/usr/src/CommonServer - ./CommonUI:/usr/src/CommonUI - /usr/src/Common/node_modules/ - /usr/src/CommonUI/node_modules/ - /usr/src/CommonServer/node_modules/ dashboard: ports: - '3009:3009' build: network: host context: . dockerfile: ./Dashboard/Dockerfile.dev env_file: - ./Common/.env - ./CommonUI/.env - ./Accounts/.env environment: *common-variables depends_on: - identity - accounts volumes: - ./Dashboard:/usr/src/app # Use node modules of the container and not host system. # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder - /usr/src/app/node_modules/ - ./Common:/usr/src/Common - ./CommonServer:/usr/src/CommonServer - ./CommonUI:/usr/src/CommonUI - /usr/src/Common/node_modules/ - /usr/src/CommonUI/node_modules/ - /usr/src/CommonServer/node_modules/ # data-ingestor: # ports: # - '3200:3200' # - '9338:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./DataIngestor/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./DataIngestor/.env # environment: *common-variables # depends_on: # - script-runner # - dashboard-api # - realtime # volumes: # - ./DataIngestor:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # realtime: # ports: # - '3300:3300' # - '9250:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./Realtime/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./Realtime/.env # environment: *common-variables # volumes: # - ./Realtime:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # helmchart: # ports: # - '3423:3423' # build: # network: host # context: . # dockerfile: ./HelmChart/Dockerfile # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./HelmChart/.env # environment: *common-variables # volumes: # - ./HelmChart:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # probe-api: # ports: # - '3400:3400' # - '9251:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./ProbeAPI/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./ProbeAPI/.env # environment: *common-variables # volumes: # - ./ProbeAPI:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # # There can only be one probe in developer docker compose. # probe: # ports: # - '9238:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./Probe/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./Probe/.env # environment: # <<: *common-variables # PROBE_NAME: Probe 1 # PROBE_KEY: test-key # volumes: # - ./Probe:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # api-docs: # ports: # - '1445:1445' # build: # network: host # context: . # dockerfile: ./ApiDocs/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./ApiDocs/.env # environment: *common-variables # volumes: # - ./ApiDocs:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # script-runner: # ports: # - '3009:3009' # - '9236:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./ScriptRunner/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./ScriptRunner/.env # environment: *common-variables # volumes: # - ./ScriptRunner:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ dashboard-api: ports: - '3002:3002' - '9232:9229' # Debugging port. build: network: host context: . dockerfile: ./DashboardAPI/Dockerfile.dev env_file: - ./Common/.env - ./CommonServer/.env - ./DashboardAPI/.env environment: *common-variables depends_on: - redis - postgres - mail links: - redis - postgres - mail volumes: - ./DashboardAPI:/usr/src/app # Use node modules of the container and not host system. # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder - /usr/src/app/node_modules/ - ./Common:/usr/src/Common - ./CommonServer:/usr/src/CommonServer - ./CommonUI:/usr/src/CommonUI - /usr/src/Common/node_modules/ - /usr/src/CommonUI/node_modules/ - /usr/src/CommonServer/node_modules/ identity: ports: - '3087:3087' - '9132:9229' # Debugging port. build: network: host context: . dockerfile: ./Identity/Dockerfile.dev env_file: - ./Common/.env - ./CommonServer/.env - ./Identity/.env environment: *common-variables depends_on: - redis - postgres - mail links: - redis - postgres - mail volumes: - ./Identity:/usr/src/app # Use node modules of the container and not host system. # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder - /usr/src/app/node_modules/ - ./Common:/usr/src/Common - ./CommonServer:/usr/src/CommonServer - ./CommonUI:/usr/src/CommonUI - /usr/src/Common/node_modules/ - /usr/src/CommonUI/node_modules/ - /usr/src/CommonServer/node_modules/ # alert: # ports: # - '3088:3088' # - '9133:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./Alert/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./Alert/.env # environment: *common-variables # depends_on: # - redis # - postgres # volumes: # - ./Alert:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # integration: # ports: # - '3089:3089' # - '9134:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./Integration/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./Integration/.env # environment: *common-variables # depends_on: # - redis # - postgres # volumes: # - ./Integration:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ home: ports: - '1444:1444' - '9235:9229' # Debugging port. env_file: - ./Common/.env - ./CommonServer/.env - ./Home/.env environment: *common-variables build: network: host context: . dockerfile: ./Home/Dockerfile.dev volumes: - ./Home:/usr/src/app # Use node modules of the container and not host system. # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder - /usr/src/app/node_modules/ - ./Common:/usr/src/Common - ./CommonServer:/usr/src/CommonServer - ./CommonUI:/usr/src/CommonUI - /usr/src/Common/node_modules/ - /usr/src/CommonUI/node_modules/ - /usr/src/CommonServer/node_modules/ # status-page: # ports: # - '3006:3006' # build: # network: host # context: . # dockerfile: ./StatusPage/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonUI/.env # - ./StatusPage/.env # environment: *common-variables # volumes: # - ./StatusPage:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # admin-dashboard: # ports: # - '3100:3100' # build: # network: host # context: . # dockerfile: ./AdminDashboard/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonUI/.env # - ./AdminDashboard/.env # environment: *common-variables # volumes: # - ./AdminDashboard:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # http-test-server: # ports: # - '3010:3010' # - '9234:9229' # Debugging port. # env_file: # - ./Common/.env # - ./CommonUI/.env # - ./HttpTestServer/.env # environment: *common-variables # build: # network: host # context: . # dockerfile: ./HTTPTestServer/Dockerfile.dev # volumes: # - ./HttpTestServer:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # licensing: # ports: # - '3004:3004' # - '9233:9229' # Debugging port. # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./Licensing/.env # environment: *common-variables # build: # network: host # context: . # dockerfile: ./Licensing/Dockerfile.dev # volumes: # - ./Licensing:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # application-scanner: # ports: # - '3005:3005' # - '9240:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./ApplicationScanner/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./ApplicationScanner/.env # environment: *common-variables # volumes: # - ./ApplicationScanner:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # container-scanner: # ports: # - '3055:3055' # - '9242:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./ContainerScanner/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./ContainerScanner/.env # environment: *common-variables # volumes: # - ./ContainerScanner:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ # lighthouse-runner: # ports: # - '3015:3015' # - '9241:9229' # Debugging port. # build: # network: host # context: . # dockerfile: ./LighthouseRunner/Dockerfile.dev # env_file: # - ./Common/.env # - ./CommonServer/.env # - ./LighthouseRunner/.env # environment: *common-variables # volumes: # - ./LighthouseRunner:/usr/src/app # # Use node modules of the container and not host system. # # https://stackoverflow.com/questions/29181032/add-a-volume-to-docker-but-exclude-a-sub-folder # - /usr/src/app/node_modules/ # - ./Common:/usr/src/Common # - ./CommonServer:/usr/src/CommonServer # - ./CommonUI:/usr/src/CommonUI # - /usr/src/Common/node_modules/ # - /usr/src/CommonUI/node_modules/ # - /usr/src/CommonServer/node_modules/ nginx: depends_on: - identity - accounts - dashboard-api - dashboard - home restart: always build: dockerfile: Dockerfile network: host context: ./Nginx ports: - '80:80' - '443:443' volumes: postgres: