У меня есть докеризованное приложение ASP.NET Core 3.0, организованное с использованием docker-compose. Я занимаюсь разработкой для Windows 10 с использованием Visual Studio 2019.
Я хотел бы сохранить данные в базе данных моего приложения, чтобы данные в базе данных сохранялись при перезапуске докера. Поэтому я использую том докера для монтирования пути к образу на пути к хосту. Я определяю docker-compose.yml
и docker-compose.override.yml
следующим образом:
docker-compose.yml
:
version: '3.4'
services:
sql.data:
container_name: myapp_db
image: microsoft/mssql-server-linux:2017-latest
myapp:
container_name: myapp_container
image: ${DOCKER_REGISTRY-}myapp
build:
context: .
dockerfile: myapp.API/Dockerfile
depends_on:
- sql.data
docker-compose.override.yml
:
version: '3.4'
services:
sql.data:
environment:
- SA_PASSWORD=Pass_word
- ACCEPT_EULA=Y
ports:
- "1433:1433"
volumes:
- ${APPDATA}/myapp/Database/mssql:/var/opt/mssql
При использовании этих docker-compose*
файлов база данных не сохраняется. т.е. когда я перезапускаю отладку, я получаю пустую базу данных.