Вот учебное пособие SQL Server: резервное копирование и восстановление в Docker может помочь вам скопировать файл резервной копии из работающего контейнера на хост (реальный компьютер, на котором работает контейнер докера).
Сводка :
Мы будем использовать SQL Operations Studio для выполнения запросов резервного копирования и восстановления.Чтобы получить резервную копию, вам нужно выполнить следующий запрос в окне запроса -
BACKUP DATABASE project1 TO DISK = N’/var/opt/mssql/data/project1.bak’
GO
где DISK = «Укажите место, где вы хотите создать резервную копию вашей базы данных в вашем контейнере»
Этот запрос создаст файл резервной копии (.bak) внутри контейнера.Чтобы восстановить его где-то еще, нам нужно сначала скопировать файл резервной копии из работающего контейнера на хост (на фактическом компьютере, на котором работает докер-контейнер).
Возвращение к терминалу и выполнение следующей команды копирования докера-
docker cp mssqlserver:/var/opt/mssql/data/project1.bak /Users/jbond/
где,
- mssqlserver = Имя нашего работающего контейнера
- / var / opt / mssql / data / project1.bak = Путь к нашему файлу резервной копии внутри контейнера
- / Users / jbond / = Путь, куда мы хотим скопировать файл (хост-машина)
Теперь я собираюсь восстановить его на SQL Server, работающем на моем компьютере с Windows.
Примечание. Поскольку резервное копирование выполнялось наSQL Server версии 2017, мне нужно восстановить его на той же версии для совместимости.
Надеюсь, это поможет.