version: '3.7' services: mongo: image: mongo:4.2.3 ports: - '27017:27017' volumes: - mongodata:/data/db saml: image: kenchan0130/simplesamlphp ports: - 9876:8080 - 8443:8443 environment: - SIMPLESAMLPHP_SP_ENTITY_ID=hackerbay.io - SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE=http://localhost:3002/api/user/sso/callback - SIMPLESAMLPHP_SP_SINGLE_LOGOUT_SERVICE=http://localhost/simplesaml/module.php/saml/sp/saml2-logout.php/test-sp volumes: - ./saml/users.php:/var/www/simplesamlphp/config/authsources.php redis: image: redis:5.0.7 ports: - '6379:6379' command: redis-server backend: ports: - '3002:3002' image: oneuptime/backend:latest env_file: - ./backend/.env environment: - MONGO_URL=mongodb://mongo:27017/oneuptimedb - REDIS_HOST=redis - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - SCRIPT_RUNNER_URL=http://ScriptRunner:3009 - CLUSTER_KEY=test - REALTIME_URL=http://realtime:3300 depends_on: - mongo - redis - haraka - ScriptRunner accounts: ports: - '3003:3003' image: oneuptime/accounts:latest env_file: - ./accounts/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} depends_on: - backend dashboard: ports: - '3000:3000' image: oneuptime/dashboard:latest env_file: - ./dashboard/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} depends_on: - backend - accounts home: ports: - '1444:1444' env_file: - ./home/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} image: oneuptime/home:latest StatusPage: ports: - '3006:3006' image: oneuptime/StatusPage:latest env_file: - ./StatusPage/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} depends_on: - backend - accounts - dashboard AdminDashboard: ports: - '3100:3100' image: oneuptime/AdminDashboard:latest env_file: - ./AdminDashboard/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} depends_on: - backend - accounts HttpTestServer: ports: - '3010:3010' env_file: - ./HttpTestServer/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} image: oneuptime/HttpTestServer:latest licensing: ports: - '3004:3004' env_file: - ./licensing/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} image: oneuptime/licensing:latest data-ingestor: ports: - '3200:3200' image: oneuptime/data-ingestor:latest env_file: - ./data-ingestor/.env environment: - SERVER_URL=http://backend:3002 - CLUSTER_KEY=test - SCRIPT_RUNNER_URL=http://ScriptRunner:3009 - MONGO_URL=mongodb://mongo:27017/oneuptimedb - REALTIME_URL=http://realtime:3300 depends_on: - mongo - ScriptRunner - backend - realtime realtime: ports: - '3300:3300' image: oneuptime/realtime:latest env_file: - ./realtime/.env environment: - CLUSTER_KEY=test - PORT=3300 ProbeAPI: ports: - '3400:3400' image: oneuptime/ProbeAPI:latest env_file: - ./ProbeAPI/.env environment: - CLUSTER_KEY=test - PORT=3400 - MONGO_URL=mongodb://mongo:27017/oneuptimedb - REALTIME_URL=http://realtime:3300 probe1: image: oneuptime/probe:latest env_file: - ./probe/.env environment: - PORT=3024 - SERVER_URL=http://backend:3002 - PROBE_NAME=Probe 1 - PROBE_KEY=test-key - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - CLUSTER_KEY=test - DATA_INGESTOR_URL=http://data-ingestor:3200 - PROBE_API_URL=http://ProbeAPI:3400 depends_on: - backend - data-ingestor probe2: image: oneuptime/probe:latest env_file: - ./probe/.env environment: - PORT=3025 - SERVER_URL=http://backend:3002 - PROBE_NAME=Probe 2 - PROBE_KEY=test-key - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - CLUSTER_KEY=test - DATA_INGESTOR_URL=http://data-ingestor:3200 depends_on: - backend - data-ingestor ApiDocs: ports: - '1445:1445' image: oneuptime/ApiDocs:latest env_file: - ./ApiDocs/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} InitScript: image: oneuptime/InitScript:latest ports: - '1447:1447' env_file: - ./InitScript/.env environment: - MONGO_URL=mongodb://mongo:27017/oneuptimedb - REDIS_HOST=redis - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - NODE_ENV=${NODE_ENV} depends_on: - mongo - redis ##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' image: oneuptime/haraka:latest environment: - SMTP_USER=user@oneuptime.com - SMTP_PASSWORD=oneuptime - DOMAIN="${DOMAIN}" - DKIM_PRIVATE_KEY="${DKIM_PRIVATE_KEY}" - TLS_CERT="${TLS_CERT}" - TLS_KEY="${TLS_KEY}" ScriptRunner: ports: - '3009:3009' image: oneuptime/ScriptRunner:latest env_file: - ./ScriptRunner/.env environment: - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - SERVER_URL=http://backend:3002 - CLUSTER_KEY=test ApplicationScanner: ports: - '3005:3005' image: oneuptime/ApplicationScanner:latest env_file: - ./ApplicationScanner/.env environment: - PORT=3005 - SERVER_URL=http://backend:3002 - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - CLUSTER_KEY=test depends_on: - backend ContainerScanner: ports: - '3055:3055' image: oneuptime/ContainerScanner:latest env_file: - ./ContainerScanner/.env environment: - PORT=3055 - SERVER_URL=http://backend:3002 - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - CLUSTER_KEY=test depends_on: - backend LighthouseRunner: ports: - '3015:3015' image: oneuptime/LighthouseRunner:latest env_file: - ./LighthouseRunner/.env environment: - PORT=3015 - SERVER_URL=http://backend:3002 - IS_SAAS_SERVICE=${IS_SAAS_SERVICE} - CLUSTER_KEY=test depends_on: - backend nginx: depends_on: - mongo - backend - home - dashboard - accounts - AdminDashboard restart: always image: oneuptime/nginx:latest ports: - '80:80' - '443:443' volumes: mongodata: