mirror of
https://github.com/OneUptime/oneuptime
synced 2024-11-22 07:10:53 +00:00
389 lines
9.2 KiB
YAML
389 lines
9.2 KiB
YAML
# This docker file is for CI.
|
|
# It it builds and tests docker containers in the CI pipeline.
|
|
|
|
version: '3.7'
|
|
|
|
x-common-variables: &common-variables
|
|
IS_SAAS_SERVICE: ${IS_SAAS_SERVICE}
|
|
|
|
services:
|
|
postgres:
|
|
image: postgres:latest
|
|
restart: always
|
|
env_file:
|
|
- ./Postgres/.env
|
|
ports:
|
|
- '5400:5432'
|
|
volumes:
|
|
- postgres:/var/lib/postgresql/data
|
|
|
|
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:5.0.7
|
|
ports:
|
|
- '6379:6379'
|
|
command: redis-server
|
|
env_file:
|
|
- ./Redis/.env
|
|
|
|
dashboard-api:
|
|
ports:
|
|
- '3002:3002'
|
|
build:
|
|
context: .
|
|
dockerfile: ./dashboard-api/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./DashboardAPI/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- redis
|
|
- haraka
|
|
- script-runner
|
|
|
|
identity:
|
|
ports:
|
|
- '3087:3087'
|
|
build:
|
|
context: .
|
|
dockerfile: ./Identity/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Identity/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- redis
|
|
- postgres
|
|
- mail
|
|
|
|
alert:
|
|
ports:
|
|
- '3088:3088'
|
|
build:
|
|
context: .
|
|
dockerfile: ./Alert/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Alert/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- redis
|
|
- postgres
|
|
|
|
integration:
|
|
ports:
|
|
- '3089:3089'
|
|
build:
|
|
context: .
|
|
dockerfile: ./Integration/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Integration/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- redis
|
|
- postgres
|
|
|
|
accounts:
|
|
ports:
|
|
- '3003:3003'
|
|
build:
|
|
context: .
|
|
dockerfile: ./Accounts/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonUI/.env
|
|
- ./Accounts/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- identity
|
|
|
|
dashboard:
|
|
ports:
|
|
- '3000:3000'
|
|
build:
|
|
context: .
|
|
dockerfile: ./Dashboard/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonUI/.env
|
|
- ./Dashboard/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- dashboard-api
|
|
- accounts
|
|
home:
|
|
ports:
|
|
- '1444:1444'
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonUI/.env
|
|
- ./Home/.env
|
|
environment: *common-variables
|
|
build:
|
|
context: .
|
|
dockerfile: ./Home/Dockerfile
|
|
|
|
status-page:
|
|
ports:
|
|
- '3006:3006'
|
|
build:
|
|
context: .
|
|
dockerfile: ./status-page/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonUI/.env
|
|
- ./StatusPage/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- dashboard-api
|
|
- accounts
|
|
- dashboard
|
|
|
|
admin-dashboard:
|
|
ports:
|
|
- '3100:3100'
|
|
build:
|
|
context: .
|
|
dockerfile: ./AdminDashboard/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonUI/.env
|
|
- ./AdminDashboard/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- dashboard-api
|
|
- accounts
|
|
|
|
http-test-server:
|
|
ports:
|
|
- '3010:3010'
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonUI/.env
|
|
- ./HttpTestServer/.env
|
|
environment: *common-variables
|
|
build:
|
|
context: .
|
|
dockerfile: ./HttpTestServer/Dockerfile
|
|
|
|
licensing:
|
|
ports:
|
|
- '3004:3004'
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Licensing/.env
|
|
environment: *common-variables
|
|
build:
|
|
context: .
|
|
dockerfile: ./Licensing/Dockerfile
|
|
|
|
data-ingestor:
|
|
ports:
|
|
- '3200:3200'
|
|
build:
|
|
context: .
|
|
dockerfile: ./DataIngestor/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./DataIngestor/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- script-runner
|
|
- dashboard-api
|
|
- realtime
|
|
|
|
realtime:
|
|
ports:
|
|
- '3300:3300'
|
|
build:
|
|
context: .
|
|
dockerfile: ./Realtime/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Realtime/.env
|
|
environment: *common-variables
|
|
|
|
helmchart:
|
|
ports:
|
|
- '3423:3423'
|
|
build:
|
|
context: .
|
|
dockerfile: ./HelmChart/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./HelmChart/.env
|
|
environment: *common-variables
|
|
|
|
probe-api:
|
|
ports:
|
|
- '3400:3400'
|
|
build:
|
|
context: .
|
|
dockerfile: ./ProbeAPI/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./ProbeAPI/.env
|
|
environment: *common-variables
|
|
|
|
|
|
probe1:
|
|
build:
|
|
context: .
|
|
dockerfile: ./Probe/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Probe/.env
|
|
environment:
|
|
<<: *common-variables
|
|
PROBE_NAME: Probe 1
|
|
PROBE_KEY: test-key
|
|
depends_on:
|
|
- dashboard-api
|
|
- data-ingestor
|
|
probe2:
|
|
build:
|
|
context: .
|
|
dockerfile: ./Probe/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Probe/.env
|
|
environment:
|
|
<<: *common-variables
|
|
PROBE_NAME: Probe 2
|
|
PROBE_KEY: test-key
|
|
depends_on:
|
|
- dashboard-api
|
|
- data-ingestor
|
|
|
|
api-docs:
|
|
ports:
|
|
- '1445:1445'
|
|
build:
|
|
context: .
|
|
dockerfile: ./ApiDocs/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonUI/.env
|
|
- ./ApiDocs/.env
|
|
environment: *common-variables
|
|
|
|
haraka:
|
|
ports:
|
|
- '2525:2525'
|
|
build:
|
|
context: ./Haraka
|
|
args:
|
|
PORT: '2525'
|
|
env_file:
|
|
- ./Haraka/.env
|
|
|
|
script-runner:
|
|
ports:
|
|
- '3009:3009'
|
|
build:
|
|
context: .
|
|
dockerfile: ./ScriptRunner/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./ScriptRunner/.env
|
|
environment: *common-variables
|
|
|
|
application-scanner:
|
|
ports:
|
|
- '3005:3005'
|
|
build:
|
|
context: .
|
|
dockerfile: ./ApplicationScanner/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./ApplicationScanner/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- dashboard-api
|
|
|
|
mail:
|
|
ports:
|
|
- 3190:3190
|
|
build:
|
|
context: .
|
|
dockerfile: ./Mail/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./Mail/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- haraka
|
|
- postgres
|
|
|
|
container-scanner:
|
|
ports:
|
|
- '3055:3055'
|
|
build:
|
|
context: .
|
|
dockerfile: ./ContainerScanner/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./ContainerScanner/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- dashboard-api
|
|
|
|
lighthouse-runner:
|
|
ports:
|
|
- '3015:3015'
|
|
build:
|
|
context: .
|
|
dockerfile: ./LighthouseRunner/Dockerfile
|
|
env_file:
|
|
- ./Common/.env
|
|
- ./CommonServer/.env
|
|
- ./LighthouseRunner/.env
|
|
environment: *common-variables
|
|
depends_on:
|
|
- dashboard-api
|
|
|
|
nginx:
|
|
depends_on:
|
|
- dashboard-api
|
|
- home
|
|
- dashboard
|
|
- accounts
|
|
- admin-dashboard
|
|
restart: always
|
|
build:
|
|
dockerfile: Dockerfile
|
|
context: ./Nginx
|
|
ports:
|
|
- '80:80'
|
|
- '443:443'
|
|
|
|
volumes:
|
|
postgres:
|