Мой Docker-Compose.yml:
version: "3"
services:
db:
image: microsoft/mssql-server-linux:2017-CU8
ports:
- 1433:1433
deploy:
mode: replicated
replicas: 1
environment:
- ACCEPT_EULA=Y
- MSSQL_SA_PASSWORD=SuperStrongSqlAdminPassword)(*£)($£)
volumes:
- /home/mssql/:/var/opt/mssql/
- /var/opt/mssql/data
Как видите, у меня есть том, сопоставленный с каталогом на хост-машине: / home / msqql: / var / opt / mssql /
Если я это сделаю: docker stack deploy -c docker-compose.yml [stack name]
.
Сервер запускается, и я вижу, что данные записываются в каталог hosts: /home/mssql/*
.
Затем я подключаюсь к серверу, создаю базу данных, таблицы и добавляю некоторые данные.
Если я затем уничтожу стек с помощью docker stack rm [stack name]
или перезапущу хост по причинам обслуживания и т. Д.
Когда SQL Server запускается снова, хотя /home/mssql/*
по-прежнему содержит файлы, созданные сервером изначально, если я подключаюсь к серверу, база данных / таблицы / данные исчезают.
Нужно ли повторно подключать базу данных, когда сервер каким-то образом перезагружается, или что-то еще, чего мне не хватает, может быть?
Спасибо