-
Notifications
You must be signed in to change notification settings - Fork 4
/
docker-compose.yml
179 lines (170 loc) · 4.85 KB
/
docker-compose.yml
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
name: 'narval'
services:
postgres:
image: postgres:16-alpine
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
ports:
- '5432:5432'
networks:
- armory_stack
volumes:
- ./.data/psql:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U postgres']
interval: 5s
timeout: 5s
retries: 5
redis:
image: 'bitnami/redis:7.0'
ports:
- '6379:6379'
expose:
- '6379'
networks:
- armory_stack
environment:
ALLOW_EMPTY_PASSWORD: 'true'
volumes:
- ./.data/redis:/data
jaeger:
image: 'jaegertracing/all-in-one'
ports:
- '16686:16686' # Web UI
- '14250:14250' # gRPC
networks:
- armory_stack
otel_collector:
image: 'otel/opentelemetry-collector-contrib'
command: ['--config=/etc/otel-collector-config.yaml']
volumes:
- ./otel-collector-config.yaml:/etc/otel-collector-config.yaml
ports:
- '4318:4318' # HTTP
- '4317:4317' # gRPC
networks:
- armory_stack
depends_on:
- jaeger
armory:
image: armory/local:latest
build:
context: ./
dockerfile: local.dockerfile
container_name: armory
command: ['/bin/bash', '-c', 'make armory/db/migrate/deploy && make armory/start/dev']
ports:
- '3005:3010'
networks:
- armory_stack
environment:
- NODE_ENV=development
- PORT=3010
- APP_UID=local-dev-armory-instance-1
- ADMIN_API_KEY=171c50ec62122b8c08362dcf9dce9b016ed615cfc7b90d4bc3fe5b223d967fb2 # armory-admin-api-key
- APP_DATABASE_URL=postgresql://postgres:postgres@postgres:5432/armory?schema=public
- APP_DATABASE_USERNAME=postgres
- APP_DATABASE_PASSWORD=postgres
- APP_DATABASE_HOST=host.docker.internal
- APP_DATABASE_PORT=5432
- APP_DATABASE_NAME=armory
- REDIS_HOST=redis
- REDIS_PORT=6379
- MANAGED_DATASTORE_BASE_URL=http://armory:3010/v1/data
- POLICY_ENGINE_URLS=http://policy_engine:3010
- POLICY_ENGINE_ADMIN_API_KEYS=engine-admin-api-key
volumes:
- ./packages:/app/packages
- ./apps:/app/apps
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_started
policy_engine:
image: armory/local:latest
build:
context: ./
dockerfile: local.dockerfile
container_name: policy-engine
command: ['/bin/bash', '-c', 'make policy-engine/db/migrate/deploy && make policy-engine/start/dev']
ports:
- '3020:3010'
networks:
- armory_stack
environment:
- NODE_ENV=development
- PORT=3010
- ADMIN_API_KEY=dde1fba05d6b0b1a40f2cd9f480f6dcc37a6980bcff3db54377a46b056dc472c # engine-admin-api-key
- APP_DATABASE_URL=postgresql://postgres:postgres@postgres:5432/engine?schema=public
- APP_DATABASE_USERNAME=postgres
- APP_DATABASE_PASSWORD=postgres
- APP_DATABASE_HOST=host.docker.internal
- APP_DATABASE_PORT=5432
- APP_DATABASE_NAME=engine
- APP_UID=local-dev-engine-instance-1
- MASTER_PASSWORD=unsafe-local-dev-master-password
- RESOURCE_PATH=./apps/policy-engine/src/resource
- KEYRING_TYPE=raw
- SIGNING_PROTOCOL=simple
volumes:
- ./packages:/app/packages
- ./apps:/app/apps
depends_on:
postgres:
condition: service_healthy
armory:
condition: service_started
vault:
image: armory/local:latest
build:
context: ./
dockerfile: local.dockerfile
container_name: vault
command: ['/bin/bash', '-c', 'make vault/db/migrate/deploy && make vault/start/dev']
ports:
- '3011:3010'
networks:
- armory_stack
environment:
- NODE_ENV=development
- PORT=3010
- ADMIN_API_KEY=d4a6b4c1cb71dbdb68a1dd429ad737369f74b9e264b9dfa639258753987caaad # vault-admin-api-key
- APP_DATABASE_URL=postgresql://postgres:postgres@postgres:5432/vault?schema=public
- APP_DATABASE_USERNAME=postgres
- APP_DATABASE_PASSWORD=postgres
- APP_DATABASE_HOST=host.docker.internal
- APP_DATABASE_PORT=5432
- APP_DATABASE_NAME=vault
- APP_UID=local-dev-vault-instance-1
- MASTER_PASSWORD=unsafe-local-dev-master-password
- KEYRING_TYPE=raw
- BASE_URL=http://localhost:3011
volumes:
- ./packages:/app/packages
- ./apps:/app/apps
depends_on:
postgres:
condition: service_healthy
devtool:
image: armory/local:latest
build:
context: ./
dockerfile: local.dockerfile
container_name: devtool
command: ['/bin/bash', '-c', 'make devtool/start/dev']
ports:
- '4200:4200'
networks:
- armory_stack
volumes:
- ./packages:/app/packages
- ./apps:/app/apps
volumes:
postgres_data:
driver: local
redis_data:
driver: local
networks:
armory_stack: