-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcompose.yml
More file actions
113 lines (106 loc) · 3.75 KB
/
compose.yml
File metadata and controls
113 lines (106 loc) · 3.75 KB
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
---
services:
app: &services_app
build:
context: .
args: &aspace-build-args
- ARCHIVESSPACE_VERSION=${ARCHIVESSPACE_VERSION:-v4.1.1}
# ASpace bundles a lot of services, for a full reference:
# @see https://docs.archivesspace.org/customization/configuration/#urls-for-archivesspace-components
ports:
- 8080:8080 # staff
- 8081:8081 # public (disabled by APPCONFIG_ENABLE_PUBLIC)
- 8082:8082 # OAI harvesting
- 8888:8888 # documentation
- 8089:8089 # backend
- 8090:8090 # built-in solr (unused)
- 8091:8091 # indexer
configs:
- source: en-locales.yml
target: /opt/app/locales/enums/en.yml
depends_on:
db:
condition: service_started
solr:
condition: service_healthy
updater:
condition: service_completed_successfully
environment:
# @note ArchivesSpace settings can be specified by setting ENV vars of the form
# APPCONFIG_<Upcased Parameter Name>. We have run into problems with any
# that require parsing JSON, however, so avoid that.
#APPCONFIG_FRONTEND_BRANDING_IMG: "assets/images/banner_logo.png"
- APPCONFIG_FRONTEND_BRANDING_IMG=assets/images/aspace_lit_development.png
- APPCONFIG_FRONTEND_BRANDING_IMG_ALT_TEXT=ArchivesSpace Local Development Logo
- APPCONFIG_PLUGINS_OVERRIDE=local,lcnaf,digitization_work_order,material_types
- APPCONFIG_ENABLE_PUBLIC=false
- APPCONFIG_PUI_INDEXER_ENABLED=false
- APPCONFIG_SOLR_URL=http://solr:8983/solr/archivesspace
- APPCONFIG_SOLR_VERIFY_CHECKSUMS=false
- ASPACE_LOGGED_IN_MSG=You are logged in to a local development instance of ArchivesSpace
- ASPACE_WELCOME_HEADING=ArchivesSpace Development (local)
- ASPACE_WELCOME_MESSAGE=You are on a local development instance of ArchivesSpace
- JAVA_OPTS=-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xss512k -Djavax.accessibility.assistive_technologies=''
# @note Use `secrets:` instead of `environment:` to test that the entrypoint loads them into ENV
secrets:
- APPCONFIG_DB_URL
volumes:
- aspace_data:/opt/app/data
- solr_data:/var/solr/data:ro
updater:
<<: *services_app
depends_on:
db:
condition: service_started
command: scripts/setup-database.sh
ports: []
restart: on-failure
solr:
build:
context: solr
args: *aspace-build-args
command: solr-precreate archivesspace /opt/solr/server/solr/configsets/archivesspace
environment:
# @see https://docs.archivesspace.org/provisioning/solr/#setup-the-environment
- SOLR_MODULES=analysis-extras
# Eliminates "failed to reserve shared memory" warning
# @see https://support.pingidentity.com/s/article/Addressing-Failed-to-reserve-shared-memory-errors
- GC_TUNE=-XX:-UseLargePages
ports:
- 8983:8983
volumes:
- solr_data:/var/solr
healthcheck:
test: curl --max-time 10 -f http://localhost:8983/solr/#/~cores/archivesspace || exit 1
start_period: 10s
interval: 10s
timeout: 10s
retries: 5
db:
image: mariadb:10.9
environment:
# @note These are all hardcoded for convenience
- MYSQL_ROOT_PASSWORD=archivesspace-root
- MYSQL_DATABASE=archivesspace
- MYSQL_USER=archivesspace
- MYSQL_PASSWORD=archivesspace
ports:
- 3306:3306
secrets:
- source: root-my.cnf
target: /root/.my.cnf
volumes:
- ./db/dumps:/docker-entrypoint-initdb.d:ro
- db_data:/var/lib/mysql
configs:
en-locales.yml:
file: files/locales/enums/en.yml
secrets:
APPCONFIG_DB_URL:
environment: APPCONFIG_DB_URL
root-my.cnf:
file: files/root-my.cnf
volumes:
aspace_data: {}
db_data: {}
solr_data: {}