Снятие бекапа из mysql контейнера при помощи Ansible
Вот простой рецепт:
- name: backup mysql from container
gather_facts: no
vars:
- db_container: container_db_1
- image: mysql:5.6
- db:
name: database_name
user: root
password: root
- dump_file: ./dump-latest.sql
tasks:
- name: run backup container
shell: "docker run --rm --link {{db_container}}:db --entrypoint \"/usr/bin/mysqldump\" {{image}} -hdb -u{{db.user}} -p{{db.password}} {{db.name}}"
register: output
- name: copy output
local_action: copy content="{{ output.stdout }}" dest="{{dump_file}}"
Работает БЕЗ создания файлов на удаленном хосте, помимо, конечно, временного контейнера.