Резервное копирование БД с docker на реальную машину - PullRequest
0 голосов
/ 15 апреля 2020

решено!

Доброе утро:)

Кто-нибудь делал резервную копию БД с docker на хост-машину? У меня есть база данных MySQL, но я бы хотел клонировать ее в свою реальную машину, потому что каждый раз, когда я запускаю контейнер, он создает новый образ, но я хочу использовать эту базу данных каждый раз (поэтому я хочу, чтобы база данных сохранялась в реальной машине) .

Большое спасибо!

enter image description here

1 Ответ

0 голосов
/ 15 апреля 2020

Если у вас есть контейнер Docker, который уже настроен на использование базы данных MySQL внутри контейнера, вы можете создать резервную копию базы данных с mysqldump внутри контейнера, например:

mysqldump database > database.sql

(ПРИМЕЧАНИЕ! Вы запускаете это внутри своего контейнера)

Затем вы можете использовать команду docker container cp для копирования файлов между контейнером и локальной файловой системой. Например:

docker container cp <containerId>:/file/path/within/container /host/path/target

(ПРИМЕЧАНИЕ! Вы запускаете это в своей локальной файловой системе)

Поэтому, используя этот пример, командной строкой будет:

docker container cp <containerId>:/full/path/to/database.sql .

Это копирует файл database.sql в ваш текущий каталог в локальной файловой системе.

...