|
1 year ago | |
---|---|---|
docker | 1 year ago | |
host_vars | 1 year ago | |
roles/crontab/tasks | 1 year ago | |
Dockerfile | 1 year ago | |
Jenkinsfile | 1 year ago | |
ansible.cfg | 1 year ago | |
borg.yml | 1 year ago | |
inventory.ini | 1 year ago | |
readme.md | 1 year ago |
Условия:
docker/borg.pub
в authorized_keys
, а закрытый ключ вшивается прямо в образ. Это легко переделывается под ваши нужды безопасности.Чтобы выпустить новый образ нужно внести все необходимые изменения в Dockerfile, в скрипты внутри директории docker и другие зависимости, закоммитить, а затем повесить тег на последний коммит с новым тегом образа. За тег образа принимается: "<текущая версия borg>-<модификатор>". Модификатор определяется эмпирически, например, 1.1.10-12.
eval `ssh-agent` && ssh-add /root/.ssh/borg.pem
borg init -e none borg@backups.blindage.org:wordpress-mysql
borg list borg@backups.blindage.org:wordpress-mysql
eval `ssh-agent -k`
inventory.ini
host_vars
одноименный с новым хостом файл с описанием крона eval `ssh-agent` && ssh-add /root/.ssh/borg.pem
borg list wordpress-mysql::files-2020-02-10_22:01:26
borg extract wordpress-mysql::files-2020-02-10_22:01:26 tmp/mysql.blindage.org-wordpress.sql
eval `ssh-agent -k`
crontab_tasks:
# дамп БД в файл и резервная копия файла
wordpress-mysql: { job: "docker run --rm -e DBHOST=mysql.blindage.org -e DBUSER=myuser -e DBPASS=WAhquSXJY -e DBPORT=3306 -e DBNAME=wordpress registry.blindage.org/borg:1.1.10 /usr/bin/borg_backup_mysql.sh 'wordpress-mysql'", minute: "59", hour: "23" }
# резервная копия файлов
vault: { job: "docker run --rm -v /srv/vault:/srv/vault registry.blindage.org/borg:1.1.10 /usr/bin/borg_backup_files.sh 'vault' '/srv/vault'", minute: "59", hour: "23" }