@@ -77,8 +77,6 @@ services:
7777 NGINX_HOST : ${DOMAIN_NAME}
7878 NGINX_PORT : 80
7979 TZ : ' ${LOCAL_TIMEZONE}'
80- labels :
81- - " docker-volume-backup.stop-during-backup=true"
8280 command : bash -c "/docker-entrypoint.sh nginx -v; sh /tmp/ssl-conf.sh '${DOMAIN_NAME}' '${LETSENCRYPT_CONF_PREFIX}' '${NGINX_PREFIX}'"
8381
8482 certbot :
@@ -131,15 +129,13 @@ services:
131129 # - database
132130 environment :
133131 # PMA_HOST: database
134- PMA_PMADB : phpmyadmin
132+ PMA_PMADB : ' phpmyadmin'
135133 PMA_CONTROLUSER : ' ${PMA_CONTROLUSER}'
136134 PMA_CONTROLPASS : ' ${PMA_CONTROLPASS}'
137135 MYSQL_ROOT_PASSWORD : ' ${MYSQL_ROOT_PASSWORD}'
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,29 +191,29 @@ 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 backup :
200- image : ' futurice /docker-volume-backup'
197+ image : offen /docker-volume-backup:latest
201198 container_name : backup
202199 networks :
203200 - backend
204201 volumes :
205- - ' /var/run/docker.sock:/var/run/docker.sock:ro'
206202 - ' html:/backup/html:ro'
207203 - ' db:/backup/db:ro'
204+ - ' db-backup-data:/backup/db-backup-data:ro'
205+ - ' /var/run/docker.sock:/var/run/docker.sock:ro'
208206 - type : bind
209207 source : ./backups
210208 target : /archive
211209 hostname : backup
212210 restart : unless-stopped
213211 environment :
214- BACKUP_WAIT_SECONDS : 120
215212 BACKUP_CRON_EXPRESSION : ' 20 01 * * *'
216213 BACKUP_FILENAME : ' backup-%Y-%m-%dT%H-%M-%S.tar.gz'
217- TZ : ' ${LOCAL_TIMEZONE}'
214+ BACKUP_RETENTION_DAYS : ' 7'
215+ EXEC_LABEL : ' database'
216+ BACKUP_EXCLUDE_REGEXP : ' srv|\\.log$$'
218217
219218networks :
220219 backend : null
@@ -237,6 +236,8 @@ volumes:
237236 o : bind
238237 db :
239238 name : ${DATABASE_CONT_NAME}-data
239+ db-backup-data :
240+ name : ${DATABASE_CONT_NAME}-backup-data
240241 dtredis :
241242 name : redis-data
242243 certbot-etc :
0 commit comments