fix docker-compose file

This commit is contained in:
Nawaz Dhandala
2022-04-07 15:30:02 +01:00
parent 640cef25e2
commit 6538eba839
2 changed files with 347 additions and 64 deletions

323
docker-compose.ci.yml Normal file
View File

@@ -0,0 +1,323 @@
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'
build:
context: .
dockerfile: ./backend/Dockerfile
env_file:
- ./backend/.env
environment:
- MONGO_URL=mongodb://mongo:27017/oneuptimedb
- REDIS_HOST=redis
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
- SCRIPT_RUNNER_URL=http://script-runner:3009
- CLUSTER_KEY=test
- REALTIME_URL=http://realtime:3300
depends_on:
- mongo
- redis
- haraka
- script-runner
accounts:
ports:
- '3003:3003'
build:
context: .
dockerfile: ./accounts/Dockerfile
env_file:
- ./accounts/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
depends_on:
- backend
dashboard:
ports:
- '3000:3000'
build:
context: .
dockerfile: ./dashboard/Dockerfile
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}
build:
context: .
dockerfile: ./home/Dockerfile
status-page:
ports:
- '3006:3006'
build:
context: .
dockerfile: ./status-page/Dockerfile
env_file:
- ./status-page/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
depends_on:
- backend
- accounts
- dashboard
admin-dashboard:
ports:
- '3100:3100'
build:
context: .
dockerfile: ./admin-dashboard/Dockerfile
env_file:
- ./admin-dashboard/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
depends_on:
- backend
- accounts
http-test-server:
ports:
- '3010:3010'
env_file:
- ./http-test-server/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
build:
context: .
dockerfile: ./http-test-server/Dockerfile
licensing:
ports:
- '3004:3004'
env_file:
- ./licensing/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
build:
context: .
dockerfile: ./licensing/Dockerfile
data-ingestor:
ports:
- '3200:3200'
build:
context: .
dockerfile: ./data-ingestor/Dockerfile
env_file:
- ./data-ingestor/.env
environment:
- SERVER_URL=http://backend:3002
- CLUSTER_KEY=test
- SCRIPT_RUNNER_URL=http://script-runner:3009
- MONGO_URL=mongodb://mongo:27017/oneuptimedb
- REALTIME_URL=http://realtime:3300
depends_on:
- mongo
- script-runner
- backend
- realtime
realtime:
ports:
- '3300:3300'
build:
context: .
dockerfile: ./realtime/Dockerfile
env_file:
- ./realtime/.env
environment:
- CLUSTER_KEY=test
- PORT=3300
probe-api:
ports:
- '3400:3400'
build:
context: .
dockerfile: ./probe-api/Dockerfile
env_file:
- ./probe-api/.env
environment:
- CLUSTER_KEY=test
- PORT=3400
- MONGO_URL=mongodb://mongo:27017/oneuptimedb
- REALTIME_URL=http://realtime:3300
probe1:
build:
context: .
dockerfile: ./probe/Dockerfile
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://probe-api:3400
depends_on:
- backend
- data-ingestor
probe2:
build:
context: .
dockerfile: ./probe/Dockerfile
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
api-docs:
ports:
- '1445:1445'
build:
context: .
dockerfile: ./api-docs/Dockerfile
env_file:
- ./api-docs/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
init-script:
build:
context: .
dockerfile: ./init-script/Dockerfile
ports:
- '1447:1447'
env_file:
- ./init-script/.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'
build:
context: ./haraka
args:
PORT: '2525'
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}"
script-runner:
ports:
- '3009:3009'
build:
context: .
dockerfile: ./script-runner/Dockerfile
env_file:
- ./script-runner/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
- SERVER_URL=http://backend:3002
- CLUSTER_KEY=test
application-scanner:
ports:
- '3005:3005'
build:
context: .
dockerfile: ./application-scanner/Dockerfile
env_file:
- ./application-scanner/.env
environment:
- PORT=3005
- SERVER_URL=http://backend:3002
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
- CLUSTER_KEY=test
depends_on:
- backend
container-scanner:
ports:
- '3055:3055'
build:
context: .
dockerfile: ./container-scanner/Dockerfile
env_file:
- ./container-scanner/.env
environment:
- PORT=3055
- SERVER_URL=http://backend:3002
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
- CLUSTER_KEY=test
depends_on:
- backend
lighthouse-runner:
ports:
- '3015:3015'
build:
context: .
dockerfile: ./lighthouse-runner/Dockerfile
env_file:
- ./lighthouse-runner/.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
- admin-dashboard
restart: always
build:
dockerfile: Dockerfile
context: ./nginx
ports:
- '80:80'
- '443:443'
volumes:
mongodata:

View File

@@ -23,12 +23,11 @@ services:
ports:
- '6379:6379'
command: redis-server
backend:
ports:
- '3002:3002'
build:
context: .
dockerfile: ./backend/Dockerfile
image: oneuptime/backend:latest
env_file:
- ./backend/.env
environment:
@@ -46,9 +45,7 @@ services:
accounts:
ports:
- '3003:3003'
build:
context: .
dockerfile: ./accounts/Dockerfile
image: oneuptime/accounts:latest
env_file:
- ./accounts/.env
environment:
@@ -58,9 +55,7 @@ services:
dashboard:
ports:
- '3000:3000'
build:
context: .
dockerfile: ./dashboard/Dockerfile
image: oneuptime/dashboard:latest
env_file:
- ./dashboard/.env
environment:
@@ -75,15 +70,11 @@ services:
- ./home/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
build:
context: .
dockerfile: ./home/Dockerfile
image: oneuptime/home:latest
status-page:
ports:
- '3006:3006'
build:
context: .
dockerfile: ./status-page/Dockerfile
image: oneuptime/status-page:latest
env_file:
- ./status-page/.env
environment:
@@ -95,9 +86,7 @@ services:
admin-dashboard:
ports:
- '3100:3100'
build:
context: .
dockerfile: ./admin-dashboard/Dockerfile
image: oneuptime/admin-dashboard:latest
env_file:
- ./admin-dashboard/.env
environment:
@@ -112,9 +101,7 @@ services:
- ./http-test-server/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
build:
context: .
dockerfile: ./http-test-server/Dockerfile
image: oneuptime/http-test-server:latest
licensing:
ports:
- '3004:3004'
@@ -122,15 +109,11 @@ services:
- ./licensing/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
build:
context: .
dockerfile: ./licensing/Dockerfile
image: oneuptime/licensing:latest
data-ingestor:
ports:
- '3200:3200'
build:
context: .
dockerfile: ./data-ingestor/Dockerfile
image: oneuptime/data-ingestor:latest
env_file:
- ./data-ingestor/.env
environment:
@@ -147,9 +130,7 @@ services:
realtime:
ports:
- '3300:3300'
build:
context: .
dockerfile: ./realtime/Dockerfile
image: oneuptime/realtime:latest
env_file:
- ./realtime/.env
environment:
@@ -158,9 +139,7 @@ services:
probe-api:
ports:
- '3400:3400'
build:
context: .
dockerfile: ./probe-api/Dockerfile
image: oneuptime/probe-api:latest
env_file:
- ./probe-api/.env
environment:
@@ -169,9 +148,7 @@ services:
- MONGO_URL=mongodb://mongo:27017/oneuptimedb
- REALTIME_URL=http://realtime:3300
probe1:
build:
context: .
dockerfile: ./probe/Dockerfile
image: oneuptime/probe:latest
env_file:
- ./probe/.env
environment:
@@ -187,9 +164,7 @@ services:
- backend
- data-ingestor
probe2:
build:
context: .
dockerfile: ./probe/Dockerfile
image: oneuptime/probe:latest
env_file:
- ./probe/.env
environment:
@@ -206,17 +181,13 @@ services:
api-docs:
ports:
- '1445:1445'
build:
context: .
dockerfile: ./api-docs/Dockerfile
image: oneuptime/api-docs:latest
env_file:
- ./api-docs/.env
environment:
- IS_SAAS_SERVICE=${IS_SAAS_SERVICE}
init-script:
build:
context: .
dockerfile: ./init-script/Dockerfile
image: oneuptime/init-script:latest
ports:
- '1447:1447'
env_file:
@@ -235,10 +206,7 @@ services:
haraka:
ports:
- '2525:2525'
build:
context: ./haraka
args:
PORT: '2525'
image: oneuptime/haraka:latest
environment:
- SMTP_USER=user@oneuptime.com
- SMTP_PASSWORD=oneuptime
@@ -249,9 +217,7 @@ services:
script-runner:
ports:
- '3009:3009'
build:
context: .
dockerfile: ./script-runner/Dockerfile
image: oneuptime/script-runner:latest
env_file:
- ./script-runner/.env
environment:
@@ -261,9 +227,7 @@ services:
application-scanner:
ports:
- '3005:3005'
build:
context: .
dockerfile: ./application-scanner/Dockerfile
image: oneuptime/application-scanner:latest
env_file:
- ./application-scanner/.env
environment:
@@ -273,12 +237,11 @@ services:
- CLUSTER_KEY=test
depends_on:
- backend
container-scanner:
ports:
- '3055:3055'
build:
context: .
dockerfile: ./container-scanner/Dockerfile
image: oneuptime/container-scanner:latest
env_file:
- ./container-scanner/.env
environment:
@@ -291,9 +254,7 @@ services:
lighthouse-runner:
ports:
- '3015:3015'
build:
context: .
dockerfile: ./lighthouse-runner/Dockerfile
image: oneuptime/lighthouse-runner:latest
env_file:
- ./lighthouse-runner/.env
environment:
@@ -303,6 +264,7 @@ services:
- CLUSTER_KEY=test
depends_on:
- backend
nginx:
depends_on:
- mongo
@@ -312,9 +274,7 @@ services:
- accounts
- admin-dashboard
restart: always
build:
dockerfile: Dockerfile
context: ./nginx
image: oneuptime/nginx:latest
ports:
- '80:80'
- '443:443'