Резервное копирование ПО GitFlic запущеного с помощью Docker Compose
Резервное копирование
Для сохранения консистентности данных, рекомендуется остановить сервис Gitflic.
-
Выполните команду
docker volume ls
и найдите тома , отвечающие за данные внутри ПО Gitflic:docker volume ls -q | grep -e gitflic_data -e gitflic_cert -e pg_data -e redis_data -e gitflic_etc
# Вывод команды docker volume ls -q | grep -e gitflic_data -e gitflic_cert -e pg_data -e redis_data -e gitflic_etc docker_gitflic_data docker_gitflic_etc docker_pg_data docker_redis_data gitflic_cert
- Том gitflic_data отвечает за хранение данных ПО gitflic
- Том gitflic_etc отвечает за хранение настроек ПО gitflic
- Том gitflic_cert отвечает за хранение сертификатов ПО gitflic
- Том pg_data отвечает за хранение данных БД postgres
- Том redis_data отвечает за хранение данных БД redis
-
Выполните команды для выполнения резервного копирования, подставив ваши имена томов docker в перменные:
PG_VOL=docker_pg_data REDIS_VOL=docker_redis_data GF_VOL=docker_gitflic_data GF_ETC_VOL=docker_gitflic_etc GF_CERT_VOL=gitflic_cert docker run --rm -v ${PG_VOL}:/pg_data -v ./backups:/backups alpine tar -cvf /backups/pg_data.tar -C /pg_data . docker run --rm -v ${REDIS_VOL}:/redis_data -v ./backups:/backups alpine tar -cvf /backups/redis_data.tar -C /redis_data . docker run --rm -v ${GF_VOL}:/gitflic_data -v ./backups:/backups alpine tar -cvf /backups/gitflic_data.tar -C /gitflic_data . docker run --rm -v ${GF_ETC_VOL}:/gitflic_etc -v ./backups:/backups alpine tar -cvf /backups/gitflic_etc.tar -C /gitflic_etc . docker run --rm -v ${GF_CERT_VOL}:/gitflic_cert -v ./backups:/backups alpine tar -cvf /backups/gitflic_cert.tar -C /gitflic_cert .
-
В результате выполнения команд в текущей директории появится папка backups, с архивами данных ПО Gitflic. Сохраните эти данные в вашей СХД ,для дальнейшего востановления.
Востановление данных
-
Остановите сервис Gitflic
-
Выполните команду
docker volume ls
и найдите тома , отвечающие за данные внутри ПО Gitflic:docker volume ls -q | grep -e gitflic_data -e gitflic_cert -e pg_data -e redis_data -e gitflic_etc
# Вывод команды docker volume ls -q | grep -e gitflic_data -e gitflic_cert -e pg_data -e redis_data -e gitflic_etc docker_gitflic_data docker_gitflic_etc docker_pg_data docker_redis_data gitflic_cert
- Том gitflic_data отвечает за хранение данных ПО gitflic
- Том gitflic_etc отвечает за хранение настроек ПО gitflic
- Том gitflic_cert отвечает за хранение сертификатов ПО gitflic
- Том pg_data отвечает за хранение данных БД postgres
- Том redis_data отвечает за хранение данных БД redis
-
Перейдите с директорию с сохранеными архивами данных полученных в результате выполнения резервного копирования
-
Выполните команды для выполнения востановления, подставив ваши имена томов docker в перменные:
PG_VOL=docker_pg_data REDIS_VOL=docker_redis_data GF_VOL=docker_gitflic_data GF_ETC_VOL=docker_gitflic_etc GF_CERT_VOL=gitflic_cert docker run --rm -v ${PG_VOL}:/pg_data -v ./backups:/backups alpine tar -xvf /backups/pg_data.tar -C /pg_data . docker run --rm -v ${REDIS_VOL}:/redis_data -v ./backups:/backups alpine tar -xvf /backups/redis_data.tar -C /redis_data . docker run --rm -v ${GF_VOL}:/gitflic_data -v ./backups:/backups alpine tar -xvf /backups/gitflic_data.tar -C /gitflic_data . docker run --rm -v ${GF_ETC_VOL}:/gitflic_etc -v ./backups:/backups alpine tar -xvf /backups/gitflic_etc.tar -C /gitflic_etc . docker run --rm -v ${GF_CERT_VOL}:/gitflic_cert -v ./backups:/backups alpine tar -xvf /backups/gitflic_cert.tar -C /gitflic_cert .
-
В результате выполнения команд будет выполнено востановление данных из соотвествующих архивов.
-
Запустите ПО Gitflic и проверьте корректность данных.