-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
124 lines (115 loc) · 4.45 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
version: '3.4'
services:
app: &app
build: .
entrypoint: 'entrypoint.sh'
command: ['rails', 's', '-p', '3000', '-b', '0.0.0.0']
environment:
- RAILS_ENV=development
- RAILS_LOG_LEVEL=debug
- DATABASE_USER=avalon
- DATABASE_PASSWORD=avalon
- DATABASE_NAME=avalon_development
- DATABASE_HOST=db
- FEDORA_URL=http://fcrepo:8080/rest
- FEDORA_BASE_PATH=/dev
- SOLR_URL=http://solr:8983/solr/avalon
- SOLR_HOST=solr
- SOLR_PORT=8983
- REDIS_SERVER=redis:6379
- SETTINGS__REDIS__HOST=redis
- SETTINGS__REDIS__PORT=6379
- SETTINGS__REDIS__DB=0
- DROPBOX_PATH=/var/avalon/dropbox
- DROPBOX_UPLOAD_URI=/dropbox
- ENCODE_WORK_DIR=/streams/
- SECRET_KEY_BASE=abcd1234
- SETTINGS__ACTIVE_STORAGE__ROOT=/var/avalon/storage
- SETTINGS__AUTH__DEVISE_STRATAGY=saml
- SETTINGS__SAML__ASSERTION_CONSUMER_SERVICE_URL=http://localhost:3000/users/saml/auth
- SETTINGS__SAML__ASSERTION_CONSUMER_SERVICE_BINDING=urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST
- SETTINGS__SAML__NAME_IDENTIFIER_FORMAT=urn:oasis:names:tc:SAML:2.0:nameid-format:transient
- SETTINGS__SAML__SP_ENTITY_ID=http://localhost:3000/users/saml/metadata
- SETTINGS__SAML__AUTHN_CONTEXT=urn:oasis:names:tc:SAML:2.0:ac:classes:Password
- SETTINGS__SAML__SECURITY_ASSERTIONS_ENCRYPTED=false
- SETTINGS__SAML__IDP_SSO_SERVICE_URL=http://localhost:8888/simplesaml/saml2/idp/SSOService.php
- SETTINGS__SAML__IDP_SLO_SERVICE_URL=http://localhost:8888/simplesaml/saml2/idp/SingleLogoutService.php
- SETTINGS__SAML__IDP_CERT=-----BEGIN CERTIFICATE----- MIICmjCCAYICCQDX5sKPsYV3+jANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDDAR0 ZXN0MB4XDTE5MTIyMzA5MDI1MVoXDTIwMDEyMjA5MDI1MVowDzENMAsGA1UEAwwE dGVzdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMdtDJ278DQTp84O 5Nq5F8s5YOR34GFOGI2Swb/3pU7X7918lVljiKv7WVM65S59nJSyXV+fa15qoXLf sdRnq3yw0hTSTs2YDX+jl98kK3ksk3rROfYh1LIgByj4/4NeNpExgeB6rQk5Ay7Y S+ARmMzEjXa0favHxu5BOdB2y6WvRQyjPS2lirT/PKWBZc04QZepsZ56+W7bd557 tdedcYdY/nKI1qmSQClG2qgslzgqFOv1KCOw43a3mcK/TiiD8IXyLMJNC6OFW3xT L/BG6SOZ3dQ9rjQOBga+6GIaQsDjC4Xp7Kx+FkSvgaw0sJV8gt1mlZy+27Sza6d+ hHD2pWECAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAm2fk1+gd08FQxK7TL04O8EK1 f0bzaGGUxWzlh98a3Dm8+OPhVQRi/KLsFHliLC86lsZQKunYdDB+qd0KUk2oqDG6 tstG/htmRYD/S/jNmt8gyPAVi11dHUqW3IvQgJLwxZtoAv6PNs188hvT1WK3VWJ4 YgFKYi5XQYnR5sv69Vsr91lYAxyrIlMKahjSW1jTD3ByRfAQghsSLk6fV0OyJHyh uF1TxOVBVf8XOdaqfmvD90JGIPGtfMLPUX4m35qaGAU48PwCL7L3cRHYs9wZWc0i fXZcBENLtHYCLi5txR8c5lyHB9d3AQHzKHMFNjLswn5HsckKg83RH7+eVqHqGw== -----END CERTIFICATE-----
ports:
- 3000:3000
depends_on:
- db
- fcrepo
- solr
- nginx
- redis
- idp
volumes:
- .:/avalon-app
- ./dropbox:/var/avalon/dropbox
- ./storage:/var/avalon/storage
- streams:/streams
- uploads:/var/avalon/uploads
worker:
<<: *app
command: ['sidekiq', '-C', 'config/sidekiq.yml']
ports: []
db:
image: mysql:8.0
restart: always
command: '--character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password'
environment:
- MYSQL_USER=avalon
- MYSQL_PASSWORD=avalon
- MYSQL_DATABASE=avalon_development
- MYSQL_ROOT_PASSWORD=my-secret-password
volumes:
- db:/var/lib/mysql
nginx:
image: nytimes/nginx-vod-module
restart: always
ports:
- 8181:8181
volumes:
- ./.nginx.conf:/usr/local/nginx/conf/nginx.conf
- streams:/usr/local/nginx/streams
fcrepo:
image: seanlw/fcrepo:4.7.6
restart: always
environment:
- JAVA_OPTIONS=-Dfcrepo.log=DEBUG
volumes:
- fcrepo:/data:cached
depends_on:
- db
redis:
image: redis:5-alpine
restart: always
volumes:
- redis:/data
solr:
image: solr:6.6.4
restart: always
volumes:
- ./solr/config:/opt/solr/avalon_conf
- solr:/opt/solr/server/solr/mycores
entrypoint:
- docker-entrypoint.sh
- solr-precreate
- avalon
- /opt/solr/avalon_conf
idp:
image: seanlw/fake-azuread
ports:
- 8888:8080
environment:
- SIMPLESAMLPHP_SP_ENTITY_ID=http://localhost:3000/users/saml/metadata
- SIMPLESAMLPHP_SP_ASSERTION_CONSUMER_SERVICE=http://localhost:3000/users/saml/auth
- SIMPLESAMLPHP_SP_SINGLE_LOGOUT_SERVICE=http://localhost:3000/users/saml/idp_sign_out
volumes:
db:
streams:
uploads:
redis:
fcrepo:
solr: