This repository has been archived by the owner on Jul 27, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathdocker-compose.yml
122 lines (113 loc) · 4.23 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
# Any value can be overridden in docker-compose.override.yml, a file that is not
# under VCS control. See docker-compose.override.yml.dist for more details.
# CLEAN vs. CLONE install
# Docker compose knows to fire up the containers with databases having data
# imported from the production dumps/snapshots. Read the documentation for the
# DOCKER_RESTORE_PRODUCTION environment variable from .env.dist.
# Accessing services from the host machine
# See docker-compose.override.yml.dist on each service, for more details on how
# to access services from the host machine and how to avoid port collision with
# potential host machine instances. The ports were not exposed by default, in
# the main `docker-compose.yml` file, because they cannot be easily overridden.
# See https://stackoverflow.com/questions/48851190/docker-compose-override-a-ports-property-instead-of-merging-it
version: '3.8'
services:
web:
image: fpfis/httpd-php-dev:7.4
working_dir: /var/www/html
# macOS users should override 'volumes:' in docker-compose.override.yml.
# See docker-compose.override.yml.dist.
volumes:
- ${PWD}:/var/www/html
env_file:
- .env.dist
environment:
DOCUMENT_ROOT: "/var/www/html"
SMTP_SERVER: mail
SMTP_PORT: 1025
SMTP_FROM: contact@example.com
DRUPAL_PRIVATE_FILE_SYSTEM: /var/www/html/private
DRUPAL_FILE_TEMP_PATH: /var/www/html/tmp
# Environment variables without a value will receive the values from the
# host machine, if they are set. Sensitive information such as
# user credentials should be placed in .env file.
# See https://docs.docker.com/compose/environment-variables/#pass-environment-variables-to-containers
DRUPAL_HASH_SALT:
ASDA_URL:
ASDA_USER:
ASDA_PASSWORD:
DISABLE_XDEBUG:
DISABLE_BLACKFIRE:
# For non-macOS hosts. For macOS, see docker-compose.override.yml.dist.
XDEBUG_CONFIG: "client_host=172.17.0.1"
XDEBUG_MODE: "develop, debug"
PHP_IDE_CONFIG: "serverName=Docker"
depends_on:
- mysql
- sparql
- solr
- redis
- mail
- selenium
mysql:
image: mysql:5.7
# macOS users should override 'volumes:' in docker-compose.override.yml.
# See docker-compose.override.yml.dist.
volumes:
- ./resources/docker/mysql/config:/etc/mysql/conf.d
# MySQL dump.
- ./db/mysql/dump:/db/mysql/dump
# Contains a script to run when waking up.
- ./scripts/docker/mysql:/docker-entrypoint-initdb.d
env_file:
- .env.dist
environment:
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
MYSQL_DATABASE: 'joinup'
DOCKER_RESTORE_PRODUCTION:
sparql:
image: tenforce/virtuoso
# macOS users should override 'volumes:' in docker-compose.override.yml.
# See docker-compose.override.yml.dist.
volumes:
- ./db/virtuoso/snapshot:/data/backups
- ./scripts/docker/virtuoso/entrypoint.sh:/entrypoint.sh
environment:
SPARQL_UPDATE: 'true'
# Virtuoso .ini overrides. Pattern: VIRT_$SECTION_$KEY=$VALUE
# See https://hub.docker.com/r/tenforce/virtuoso
VIRT_Parameters_O_DIRECT: 1
VIRT_Parameters_ThreadCleanupInterval: 1
VIRT_Parameters_NumberOfBuffers: 340000
VIRT_Parameters_MaxDirtyBuffers: 250000
VIRT_Replication_ServerEnable: 0
VIRT_SPARQL_ResultSetMaxRows: 1000000
DOCKER_RESTORE_PRODUCTION:
command:
- '/bin/bash'
- '-c'
- 'chmod +x /entrypoint.sh && /entrypoint.sh'
solr:
image: solr:6
# macOS users should override 'volumes:' in docker-compose.override.yml.
# See docker-compose.override.yml.dist.
volumes:
- ./db/solr:/solr/snapshot
- ./web/modules/contrib/search_api_solr/solr-conf/6.x:/solr/conf
- ./scripts/solr/restore_solr.sh:/opt/solr/bin/restore_solr.sh
- ./scripts/docker/solr/precreate.sh:/docker-entrypoint-initdb.d/precreate.sh
environment:
SOLR_CORE: digit-joinup
DOCKER_RESTORE_PRODUCTION:
redis:
image: redis
mail:
image: mailhog/mailhog
# Includes a Selenium server accessible at port 5900.
# See docker-compose.override.yml.dist
selenium:
image: selenium/standalone-chrome-debug
environment:
- DISPLAY=:99
- SE_OPTS=-debug
- VNC_NO_PASSWORD=1