-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
132 lines (119 loc) · 3.55 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
version: '3.8'
x-app: &app
build:
context: .
target: hyku-web
cache_from:
- ghcr.io/samvera/hyku/base:latest
- ghcr.io/samvera-labs/hyku_knapsack:latest
args:
BUILDKIT_INLINE_CACHE: 1
APP_PATH: ./hyrax-webapp
image: ghcr.io/samvera-labs/hyku_knapsack:${TAG:-latest}
environment:
# This line is what makes the knapsack include use the local code instead of the remote gem
- BUNDLE_LOCAL__HYKU_KNAPSACK=/app/samvera
- BUNDLE_DISABLE_LOCAL_BRANCH_CHECK=true
- BUNDLE_BUNDLER_INJECT__GEM_PATH=/app/samvera/bundler.d
volumes:
- node_modules:/app/samvera/hyrax-webapp/node_modules:cached
- uploads:/app/samvera/hyrax-webapp/public/uploads:cached
- assets:/app/samvera/hyrax-webapp/public/assets:cached
- cache:/app/samvera/hyrax-webapp/tmp/cache:cached
- .:/app/samvera
volumes:
assets:
cache:
db:
fcrepo:
node_modules:
redis:
solr:
uploads:
zk:
zoo:
networks:
internal:
services:
zoo:
extends:
file: hyrax-webapp/docker-compose.yml
service: zoo
solr:
extends:
file: hyrax-webapp/docker-compose.yml
service: solr
fcrepo:
extends:
file: hyrax-webapp/docker-compose.yml
service: fcrepo
db:
extends:
file: hyrax-webapp/docker-compose.yml
service: db
base:
extends:
file: hyrax-webapp/docker-compose.yml
service: base
image: ghcr.io/samvera/hyku/base:${TAG:-latest}
command: bash -l -c "echo 'base is only used for building base images, which in turn reduces image build times. It does not need to be run'"
web:
<<: *app
extends:
file: hyrax-webapp/docker-compose.yml
service: web
# Uncomment command to access container with out starting bin/web. Useful for debugging or updating Gemfile.lock
# command: sleep infinity
environment:
# This line is what makes the knapsack include use the local code instead of the remote gem
- BUNDLE_LOCAL__HYKU_KNAPSACK=/app/samvera
- BUNDLE_DISABLE_LOCAL_BRANCH_CHECK=true
- VIRTUAL_PORT=3000
- VIRTUAL_HOST=.hyku.test
worker:
<<: *app
extends:
file: hyrax-webapp/docker-compose.yml
service: worker
build:
context: .
target: hyku-worker
cache_from:
- ghcr.io/samvera/hyku/base:latest
- ghcr.io/samvera-labs/hyku_knapsack/worker:latest
args:
BUILDKIT_INLINE_CACHE: 1
APP_PATH: ./hyrax-webapp
image: ghcr.io/samvera-labs/hyku_knapsack/worker:${TAG:-latest}
# Uncomment command to access container with out starting bin/worker. Useful for debugging or updating Gemfile.lock
# command: sleep infinity
volumes:
- node_modules:/app/samvera/hyrax-webapp/node_modules:cached
- uploads:/app/samvera/hyrax-webapp/public/uploads:cached
- assets:/app/samvera/hyrax-webapp/public/assets:cached
- cache:/app/samvera/hyrax-webapp/tmp/cache:cached
- .:/app/samvera
check_volumes:
<<: *app
extends:
file: hyrax-webapp/docker-compose.yml
service: check_volumes
initialize_app:
<<: *app
extends:
file: hyrax-webapp/docker-compose.yml
service: initialize_app
command:
- >
solrcloud-upload-configset.sh /app/samvera/hyrax-webapp/solr/conf &&
solrcloud-assign-configset.sh &&
SOLR_COLLECTION_NAME=hydra-test solrcloud-assign-configset.sh &&
db-migrate-seed.sh
redis:
extends:
file: hyrax-webapp/docker-compose.yml
service: redis
chrome:
extends:
file: hyrax-webapp/docker-compose.yml
service: chrome