@@ -36,7 +36,7 @@ services:
3636 labels :
3737 - ' docker-volume-backup.stop-during-backup=true'
3838 command : >
39- bash -c "pecl install -o -f redis && rm -rf /tmp/pear && docker-php-ext-enable redis && composer require 'drupal/redis:^1.6'; composer require drush/drush; composer require 'drupal/purge:^3.4' && composer require 'drupal/purge_purger_http:^1.0';
39+ bash -c "if pecl install -p -- redis; then pecl install - o -f redis && rm -rf /tmp/pear && docker-php-ext-enable redis; fi; composer require 'drupal/redis:^1.6'; composer require drush/drush; composer require 'drupal/purge:^3.4' && composer require 'drupal/purge_purger_http:^1.0';
4040 if [ ! -f \"${WEBSERVER_DOC_ROOT}/sites/default/settings.php\" ]; then install -m 777 ${WEBSERVER_DOC_ROOT}/sites/default/default.settings.php ${WEBSERVER_DOC_ROOT}/sites/default/settings.php && sed -i 's/#/\\/\\/#/g' ${WEBSERVER_DOC_ROOT}/sites/default/settings.php &&
4141 echo -e \"\\n\\$$settings['trusted_host_patterns'] = [\\n\\t'^$$(echo \"${DOMAIN_NAME}\" | sed 's/\\./\\\\./g')$$',\\n\\t'^.+\\.$$(echo \"${DOMAIN_NAME}\" | sed 's/\\./\\\\./g')$$',\\n];\" >> ${WEBSERVER_DOC_ROOT}/sites/default/settings.php;
4242 mkdir -p -m 777 ${WEBSERVER_DOC_ROOT}/sites/default/files; fi; grep -qe 'date.timezone = ${LOCAL_TIMEZONE}' ${PHP_INI_DIR_PREFIX}/php/conf.d/security.ini || echo 'date.timezone = ${LOCAL_TIMEZONE}' >> ${PHP_INI_DIR_PREFIX}/php/conf.d/security.ini; docker-php-entrypoint 'php-fpm'"
@@ -70,15 +70,13 @@ services:
7070 ports :
7171 - ' 80:80'
7272 - ' 443:443'
73- - ' 81:81 '
73+ - ' 90:90 '
7474 links :
7575 - drupal
7676 environment :
7777 NGINX_HOST : ${DOMAIN_NAME}
7878 NGINX_PORT : 80
79- TZ : ' ${LOCAL_TIMEZONE}'
80- labels :
81- - " docker-volume-backup.stop-during-backup=true"
79+ TZ : ' ${LOCAL_TIMEZONE}'
8280 command : bash -c "/docker-entrypoint.sh nginx -v; sh /tmp/ssl-conf.sh '${DOMAIN_NAME}' '${LETSENCRYPT_CONF_PREFIX}' '${NGINX_PREFIX}'"
8381
8482 certbot :
@@ -138,8 +136,6 @@ services:
138136 UPLOAD_LIMIT : ' ${PMA_UPLOAD_LIMIT}'
139137 MEMORY_LIMIT : ' ${PMA_MEMORY_LIMIT}'
140138 TZ : ' ${LOCAL_TIMEZONE}'
141- labels :
142- - " docker-volume-backup.stop-during-backup=true"
143139 command : >
144140 bash -c "echo ${PMA_HTPASSWD_USERNAME}:phpmyadmin:$$( printf \"%s:%s:%s\" \"${PMA_HTPASSWD_USERNAME}\" \"phpmyadmin\" \"${PMA_HTPASSWD_PASSWORD}\" | md5sum | awk '{print $$1}' ) > ${PMA_CONF_FOLDER}/.htpasswd
145141 && printf 'AuthType Digest\\nAuthName \"phpmyadmin\"\\nAuthDigestProvider file\\nAuthUserFile ${PMA_CONF_FOLDER}/.htpasswd\\nRequire valid-user\\n' > ${WEBSERVER_DOC_ROOT}/.htaccess && a2enmod auth_digest;
@@ -154,6 +150,7 @@ services:
154150 - backend
155151 volumes :
156152 - ' db:/var/lib/mysql'
153+ - ' db-backup-data:/tmp/backup'
157154 - type : bind
158155 source : ./database/conf.d/z-mysql.cnf
159156 target : ' ${MYSQL_CONF_PREFIX}/z-mysql.cnf'
@@ -171,6 +168,8 @@ services:
171168 TZ : ' ${LOCAL_TIMEZONE}'
172169 labels :
173170 - " docker-volume-backup.stop-during-backup=true"
171+ - " docker-volume-backup.archive-pre=/bin/sh -c 'mysqldump -uroot -p${MYSQL_ROOT_PASSWORD} --all-databases > /tmp/backup/db_backup_data.sql'"
172+ - " docker-volume-backup.exec-label=database"
174173 command : " --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password"
175174
176175 redis :
@@ -192,8 +191,6 @@ services:
192191 environment :
193192 ALLOW_EMPTY_PASSWORD : ' yes'
194193 TZ : ' ${LOCAL_TIMEZONE}'
195- labels :
196- - " docker-volume-backup.stop-during-backup=true"
197194 command : " redis-server ${REDIS_CONF_PREFIX}/redis/redis.conf"
198195
199196 varnish :
@@ -214,29 +211,29 @@ services:
214211 environment :
215212 VARNISH_SIZE : ' ${VARNISH_SIZE}'
216213 TZ : ' ${LOCAL_TIMEZONE}'
217- labels :
218- - " docker-volume-backup.stop-during-backup=true"
219214 command : " -a http=:8080,HTTP -p default_ttl=3600"
220215
221216 backup :
222- image : ' futurice /docker-volume-backup'
217+ image : offen /docker-volume-backup:latest
223218 container_name : backup
224219 networks :
225220 - backend
226221 volumes :
227- - ' /var/run/docker.sock:/var/run/docker.sock:ro'
228222 - ' html:/backup/html:ro'
229223 - ' db:/backup/db:ro'
224+ - ' db-backup-data:/backup/db-backup-data:ro'
225+ - ' /var/run/docker.sock:/var/run/docker.sock:ro'
230226 - type : bind
231227 source : ./backups
232228 target : /archive
233229 hostname : backup
234230 restart : unless-stopped
235231 environment :
236- BACKUP_WAIT_SECONDS : 120
237232 BACKUP_CRON_EXPRESSION : ' 20 01 * * *'
238233 BACKUP_FILENAME : ' backup-%Y-%m-%dT%H-%M-%S.tar.gz'
239- TZ : ' ${LOCAL_TIMEZONE}'
234+ BACKUP_RETENTION_DAYS : ' 7'
235+ EXEC_LABEL : ' database'
236+ # BACKUP_EXCLUDE_REGEXP: 'folder|folder|file|\\.log$$'
240237
241238networks :
242239 backend : null
@@ -252,6 +249,8 @@ volumes:
252249 o : bind
253250 db :
254251 name : ${DATABASE_CONT_NAME}-data
252+ db-backup-data :
253+ name : ${DATABASE_CONT_NAME}-backup-data
255254 dtredis :
256255 name : redis-data
257256 certbot-etc :
0 commit comments