blob: e288e823ecbc38a1354cc9f7f07212cec19707c3 (
plain)
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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
captainVersion: 4
services:
$$cap_appname-redis:
caproverExtra:
notExposeAsWebApp: 'true'
image: 'bitnami/redis:6.0.8-debian-10-r6'
environment:
REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD
volumes:
- $$cap_appname-redis-data:/bitnami
$$cap_appname-mongodb:
caproverExtra:
notExposeAsWebApp: 'true'
image: bitnami/mongodb:4.4.1-debian-10-r8
ports:
- '27017:27017'
volumes:
- $$cap_appname-mongodb-data:/bitnami
environment:
MONGODB_ROOT_PASSWORD: $$cap_APP_MONGODB_ROOT_PASSWORD
MONGODB_DATABASE: $$cap_APP_MONGODB_DATABASE
MONGODB_USERNAME: $$cap_APP_MONGODB_USERNAME
MONGODB_PASSWORD: $$cap_APP_MONGODB_PASSWORD
$$cap_appname-api:
caproverExtra:
containerHttpPort: '1337'
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock:rw
ports:
- '1337:1337'
image: ghcr.io/whoopsmonitor/whoopsmonitor/api:$$cap_APP_VERSION
environment:
NODE_ENV: production
CONFIG_CORS_ALLOW_ORIGINS: '*'
APP_PASSWORD: $$cap_APP_PASSWORD
MONGO_CONNECTION: mongodb://$$cap_APP_MONGODB_USERNAME:$$cap_APP_MONGODB_PASSWORD@srv-captain--$$cap_appname-mongodb:27017/$$cap_APP_MONGODB_DATABASE?authSource=$$cap_APP_MONGODB_DATABASE
APP_DATA_ENCRYPTION_KEY: $$cap_APP_DATA_ENCRYPTION_KEY
APP_REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD
APP_REDIS_CONNECTION_HOST: srv-captain--$$cap_appname-redis
APP_REDIS_CONNECTION_PORT: 6379
APP_TOKEN: $$cap_APP_TOKEN
APP_QUEUE_NAME_EXECUTE_CHECK: execute-check
APP_QUEUE_NAME_CLEANUP_CHECK_STATUS: cleanup-check-status
depends_on:
- $$cap_appname-mongodb
- $$cap_appname-redis
$$cap_appname-monitor:
restart: always
image: ghcr.io/whoopsmonitor/whoopsmonitor/monitor:$$cap_APP_VERSION
ports:
- '8080:80'
environment:
NODE_ENV: production
API_TOKEN: $$cap_APP_TOKEN
APP_API_URL: $$cap_APP_API_URL
depends_on:
- $$cap_appname-mongodb
- $$cap_appname-redis
- $$cap_appname-api
$$cap_appname-worker:
caproverExtra:
notExposeAsWebApp: 'true'
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock:rw
- $$cap_appname-worker-data:/whoopsmonitor-worker
image: ghcr.io/whoopsmonitor/whoopsmonitor/worker:$$cap_APP_VERSION
environment:
NODE_ENV: production
APP_REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD
APP_REDIS_HOST: srv-captain--$$cap_appname-redis
APP_REDIS_PORT: 6379
APP_API_URL: http://srv-captain--$$cap_appname-api:1337
APP_QUEUE_NAME_EXECUTE_CHECK: execute-check
APP_QUEUE_NAME_CLEANUP_CHECK_STATUS: cleanup-check-status
APP_QUEUE_NAME_ALERTING: alerting
APP_TOKEN: $$cap_APP_TOKEN
depends_on:
- $$cap_appname-mongodb
- $$cap_appname-redis
- $$cap_appname-api
$$cap_appname-alerting:
caproverExtra:
notExposeAsWebApp: 'true'
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock:rw
image: ghcr.io/whoopsmonitor/whoopsmonitor/alerting:1.0
environment:
NODE_ENV: production
APP_REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD
APP_REDIS_HOST: srv-captain--$$cap_appname-redis
APP_REDIS_PORT: 6379
APP_API_URL: http://srv-captain--$$cap_appname-api:1337
APP_QUEUE_NAME_ALERTING: alerting
APP_TOKEN: $$cap_APP_TOKEN
depends_on:
- $$cap_appname-mongodb
- $$cap_appname-redis
- $$cap_appname-api
$$cap_appname-image-metadata:
caproverExtra:
notExposeAsWebApp: 'true'
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock:rw
image: ghcr.io/whoopsmonitor/whoopsmonitor/image-metadata:1.0
environment:
NODE_ENV: production
API_URL: http://srv-captain--$$cap_appname-api:1337
APP_TOKEN: $$cap_APP_TOKEN
depends_on:
- $$cap_appname-mongodb
- $$cap_appname-redis
- $$cap_appname-api
caproverOneClickApp:
variables:
- label: Version
description: Application version, currently 1.0
defaultValue: '1.0'
id: $$cap_APP_VERSION
- label: '* External API URL'
description: API URL that is availaible from outside, like via browser. You can re-enter this value later but it is mandatory for "monitor" service.
defaultValue: 'https://'
id: $$cap_APP_API_URL
- label: Redis Password
description: Redis password.
defaultValue: $$cap_gen_random_hex(32)
id: $$cap_APP_REDIS_PASSWORD
- label: Mongo - root password
description: Root password for Mongo DB.
defaultValue: $$cap_gen_random_hex(32)
id: $$cap_APP_MONGODB_ROOT_PASSWORD
- label: Mongo - database username
description: Mongo DB username.
defaultValue: $$cap_gen_random_hex(32)
id: $$cap_APP_MONGODB_USERNAME
- label: Mongo - database password
description: Mongo DB password.
defaultValue: $$cap_gen_random_hex(32)
id: $$cap_APP_MONGODB_PASSWORD
- label: Mongo - database name
description: Name of the database.
defaultValue: $$cap_gen_random_hex(32)
id: $$cap_APP_MONGODB_DATABASE
- label: Application Password
description: Admin for your application. There is no account name. Just the password.
defaultValue: $$cap_gen_random_hex(16)
id: $$cap_APP_PASSWORD
- label: Encryption key
description: Sensitive data stored in Whoops Monitor are all encrypted. It is a base64 key of some string. You should change the default value.
defaultValue: a3psdWpZdU40WG9zZTRPVHNpdXkxYTlNS0JqRTdZZUs=
id: $$cap_APP_DATA_ENCRYPTION_KEY
- label: API token
description: API token that is used for securing the communication between API and external services.
defaultValue: $$cap_gen_random_hex(64)
id: $$cap_APP_TOKEN
displayName: Whoops Monitor
isOfficial: true
description: A monitoring tool that gives you clarity over your application landscape.
documentation: https://github.com/whoopsmonitor/whoopsmonitor
instructions:
start: |-
A monitoring tool that gives you clarity over your application landscape.
GitHub: https://github.com/whoopsmonitor/whoopsmonitor
end: |-
You're done! 😄
Your service is available at http://$$cap_appname.$$cap_root_domain
The password is $$cap_APP_PASSWORD
|