Skip to content

Commit 66c331a

Browse files
committed
feat: docker convenience scripts
1 parent 7c749f8 commit 66c331a

File tree

20 files changed

+76
-58
lines changed

20 files changed

+76
-58
lines changed

.dockerignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
.husky
55
audits
66
docs
7+
docker-setup
78
scripts
89
**/node_modules
910
**/build

docker-setup/Makefile

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
.PHONY: copy-env-files \
2+
infra-up infra-stop build-services \
3+
services-up services-stop
4+
5+
DOCKER_PARALLEL ?= 4
6+
7+
copy-env-files:
8+
# Copying .env file for compose itself
9+
@cp ./env-files/.env.compose .env.compose.local
10+
# Copying .env files for backend services
11+
@cp ./env-files/.env.reputation-oracle ./.env.reputation-oracle.local
12+
@cp ./env-files/.env.human-app-server .env.human-app-server.local
13+
@cp ./env-files/.env.job-launcher ./.env.job-launcher.local
14+
# Copying .env files for cvat services
15+
@cp ./env-files/.env.exchange-oracle-cvat ./.env.exchange-oracle-cvat.local
16+
@cp ./env-files/.env.recording-oracle-cvat ./.env.recording-oracle-cvat.local
17+
# Copying .env files for fortune services
18+
@cp ./env-files/.env.exchange-oracle-fortune ./.env.exchange-oracle-fortune.local
19+
@cp ./env-files/.env.recording-oracle-fortune ./.env.recording-oracle-fortune.local
20+
# Copying .env files for client apps.
21+
# It should be placed in corresponding app folder
22+
# because used during Docker image build process
23+
@cp ./env-files/.env.human-app-client ../packages/apps/human-app/frontend/.env.local
24+
@cp ./env-files/.env.job-launcher-client ../packages/apps/job-launcher/client/.env.local
25+
@cp ./env-files/.env.fortune-client ../packages/apps/fortune/exchange-oracle/client/.env.local
26+
# Restore original files
27+
@git checkout . > /dev/null 2>&1
28+
29+
infra-up:
30+
docker-compose --env-file .env.compose.local up -d postgres redis minio minio-client
31+
32+
infra-stop:
33+
docker-compose --env-file .env.compose.local stop postgres redis minio minio-client
34+
35+
build-services:
36+
docker-compose --env-file .env.compose.local --parallel $(DOCKER_PARALLEL) up --no-start
37+
38+
services-up:
39+
@service_names="$(wordlist 2, $(words $(MAKECMDGOALS)), $(MAKECMDGOALS))"; \
40+
docker-compose --env-file .env.compose.local --parallel $(DOCKER_PARALLEL) up -d $$service_names
41+
42+
services-stop:
43+
@service_names="$(wordlist 2, $(words $(MAKECMDGOALS)), $(MAKECMDGOALS))"; \
44+
docker-compose --env-file .env.compose.local stop $$service_names
45+
46+
# catch-all and noop; to avoid warnings when using MAKECMDGOALS
47+
%:
48+
@:

scripts/docker-setup/docker-compose.yml renamed to docker-setup/docker-compose.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ services:
233233
logging:
234234
<<: *default-logging
235235
build:
236-
context: ../../
236+
context: ../
237237
dockerfile: packages/apps/reputation-oracle/server/Dockerfile
238238
expose:
239239
- *backend_apps_internal_port
@@ -269,7 +269,7 @@ services:
269269
logging:
270270
<<: *default-logging
271271
build:
272-
context: ../../
272+
context: ../
273273
dockerfile: packages/apps/human-app/server/Dockerfile
274274
expose:
275275
- *backend_apps_internal_port
@@ -301,7 +301,7 @@ services:
301301
logging:
302302
<<: *default-logging
303303
build:
304-
context: ../../
304+
context: ../
305305
dockerfile: packages/apps/human-app/frontend/Dockerfile
306306
expose:
307307
- *frontend_default_port
@@ -331,7 +331,7 @@ services:
331331
logging:
332332
<<: *default-logging
333333
build:
334-
context: ../../packages/examples/cvat/exchange-oracle
334+
context: ../packages/examples/cvat/exchange-oracle
335335
dockerfile: ./Dockerfile
336336
expose:
337337
- *backend_apps_internal_port
@@ -382,7 +382,7 @@ services:
382382
logging:
383383
<<: *default-logging
384384
build:
385-
context: ../../packages/examples/cvat/recording-oracle
385+
context: ../packages/examples/cvat/recording-oracle
386386
dockerfile: ./Dockerfile
387387
expose:
388388
- *backend_apps_internal_port
@@ -434,7 +434,7 @@ services:
434434
logging:
435435
<<: *default-logging
436436
build:
437-
context: ../../
437+
context: ../
438438
dockerfile: packages/apps/job-launcher/server/Dockerfile
439439
expose:
440440
- *backend_apps_internal_port
@@ -470,7 +470,7 @@ services:
470470
logging:
471471
<<: *default-logging
472472
build:
473-
context: ../../
473+
context: ../
474474
dockerfile: packages/apps/job-launcher/client/Dockerfile
475475
expose:
476476
- *frontend_default_port
@@ -498,7 +498,7 @@ services:
498498
logging:
499499
<<: *default-logging
500500
build:
501-
context: ../../
501+
context: ../
502502
dockerfile: packages/apps/fortune/exchange-oracle/server/Dockerfile
503503
expose:
504504
- *backend_apps_internal_port
@@ -529,7 +529,7 @@ services:
529529
logging:
530530
<<: *default-logging
531531
build:
532-
context: ../../
532+
context: ../
533533
dockerfile: packages/apps/fortune/exchange-oracle/client/Dockerfile
534534
expose:
535535
- *frontend_default_port
@@ -555,7 +555,7 @@ services:
555555
logging:
556556
<<: *default-logging
557557
build:
558-
context: ../../
558+
context: ../
559559
dockerfile: packages/apps/fortune/recording-oracle/Dockerfile
560560
expose:
561561
- *backend_apps_internal_port
File renamed without changes.

0 commit comments

Comments
 (0)