-
Notifications
You must be signed in to change notification settings - Fork 259
/
docker-compose-web-modeler.yaml
146 lines (137 loc) · 4.76 KB
/
docker-compose-web-modeler.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
# Docker Compose file for Web Modeler Self-Managed. This file is not intended to be used stand-alone.
# Use it in combination with docker-compose.yaml:
#
# docker-compose -f docker-compose.yaml -f docker-compose-web-modeler.yaml up -d
#
# Note: this file is using Mailpit to simulate a mail server
version: "2.4"
services:
modeler-db:
container_name: modeler-db
image: postgres:${POSTGRES_VERSION}
healthcheck:
test: pg_isready -d modeler-db -U modeler-db-user
interval: 5s
timeout: 15s
retries: 30
environment:
POSTGRES_DB: modeler-db
POSTGRES_USER: modeler-db-user
POSTGRES_PASSWORD: modeler-db-password
networks:
- modeler
volumes:
- postgres-web:/var/lib/postgresql/data
modeler-websockets:
container_name: modeler-websockets
image: registry.camunda.cloud/web-modeler-ee/modeler-websockets:${CAMUNDA_WEB_MODELER_VERSION}
ports:
- "8060:8060"
healthcheck:
test: [ "CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://127.0.0.1:8060/up" ]
interval: 5s
timeout: 15s
retries: 30
environment:
APP_NAME: "Web Modeler Self-Managed WebSockets"
APP_DEBUG: "true"
PUSHER_APP_ID: modeler-app
PUSHER_APP_KEY: modeler-app-key
PUSHER_APP_SECRET: modeler-app-secret
networks:
- modeler
mailpit:
# If you want to use your own SMTP server, you can remove this container
# and configure RESTAPI_MAIL_HOST, RESTAPI_MAIL_PORT, REST_API_MAIL_USER,
# REST_API_MAIL_PASSWORD and RESTAPI_MAIL_ENABLE_TLS in modeler-restapi
container_name: mailpit
image: axllent/mailpit:${MAILPIT_VERSION}
ports:
- "1025:1025"
- "8075:8025"
healthcheck:
test: /usr/bin/nc -v localhost 1025
interval: 30s
networks:
- modeler
# Modeler containers
modeler-restapi:
container_name: modeler-restapi
image: registry.camunda.cloud/web-modeler-ee/modeler-restapi:${CAMUNDA_WEB_MODELER_VERSION}
command: /bin/sh -c "java $JAVA_OPTIONS org.springframework.boot.loader.JarLauncher"
depends_on:
modeler-db:
condition: service_healthy
mailpit:
condition: service_started
identity:
condition: service_healthy
healthcheck:
test: [ "CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8091/health/readiness" ]
interval: 5s
timeout: 15s
retries: 30
environment:
JAVA_OPTIONS: -Xmx128m
LOGGING_LEVEL_IO_CAMUNDA_MODELER: DEBUG
CAMUNDA_IDENTITY_BASEURL: http://identity:8084/
SPRING_DATASOURCE_URL: jdbc:postgresql://modeler-db:5432/modeler-db
SPRING_DATASOURCE_USERNAME: modeler-db-user
SPRING_DATASOURCE_PASSWORD: modeler-db-password
SPRING_PROFILES_INCLUDE: default-logging
RESTAPI_PUSHER_HOST: modeler-websockets
RESTAPI_PUSHER_PORT: "8060"
RESTAPI_PUSHER_APP_ID: modeler-app
RESTAPI_PUSHER_KEY: modeler-app-key
RESTAPI_PUSHER_SECRET: modeler-app-secret
RESTAPI_OAUTH2_TOKEN_ISSUER: http://${KEYCLOAK_HOST}:18080/auth/realms/camunda-platform
RESTAPI_OAUTH2_TOKEN_ISSUER_BACKEND_URL: http://keycloak:18080/auth/realms/camunda-platform
RESTAPI_SERVER_URL: http://localhost:8070
RESTAPI_MAIL_HOST: mailpit
RESTAPI_MAIL_PORT: 1025
RESTAPI_MAIL_ENABLE_TLS: "false"
RESTAPI_MAIL_FROM_ADDRESS: "[email protected]"
networks:
- modeler
- camunda-platform
modeler-webapp:
container_name: modeler-webapp
image: registry.camunda.cloud/web-modeler-ee/modeler-webapp:${CAMUNDA_WEB_MODELER_VERSION}
ports:
- "8070:8070"
depends_on:
modeler-restapi:
condition: service_healthy
healthcheck:
test: [ "CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8071/health/readiness" ]
interval: 5s
timeout: 15s
retries: 30
environment:
RESTAPI_HOST: modeler-restapi
SERVER_HOST: modeler-webapp
SERVER_HTTPS_ONLY: "false"
SERVER_URL: http://localhost:8070
PUSHER_APP_ID: modeler-app
PUSHER_KEY: modeler-app-key
PUSHER_SECRET: modeler-app-secret
PUSHER_HOST: modeler-websockets
PUSHER_PORT: "8060"
CLIENT_PUSHER_HOST: localhost
CLIENT_PUSHER_PORT: "8060"
CLIENT_PUSHER_FORCE_TLS: "false"
CLIENT_PUSHER_KEY: modeler-app-key
OAUTH2_CLIENT_ID: web-modeler
OAUTH2_JWKS_URL: http://keycloak:18080/auth/realms/camunda-platform/protocol/openid-connect/certs
OAUTH2_TOKEN_AUDIENCE: web-modeler
OAUTH2_TOKEN_ISSUER: http://${KEYCLOAK_HOST}:18080/auth/realms/camunda-platform
IDENTITY_BASE_URL: http://identity:8084/
PLAY_ENABLED: "true"
networks:
- modeler
- camunda-platform
networks:
camunda-platform:
modeler:
volumes:
postgres-web: