删除Docker容器而不会丢失大量数据

时间:2019-06-03 21:05:45

标签: sql-server docker docker-compose

我正在尝试创建一个永久性的docker卷,当我删除容器时,该卷将不会被删除。

步骤:
1.泊坞窗卷创建主卷
2. docker-compose up,它会正确创建所有三个容器
3.我通过前端将一些数据添加到数据库中,并创建正确添加的数据
4. docker-compose down
5. docker-compose up
6.数据保留在db中
7.同样,如果我停止并重新启动任何容器,则数据仍然存在

但是,如果我删除容器并再次进行docker-compose,数据将消失。

我很确定这是一个简单的问题,我不理解对Docker还是陌生的,但是我在这里或其他地方找不到的答案似乎都无法解释这种情况。

下面的代码

docker-compose.yml

version: "3"
services:
    frontend:
        build:
          context: ./TestClient
          dockerfile: Dockerfile
        ports: 
        - '80:80'
        image: proj1:latest
        networks:
            - overlay
        depends_on:
            - backend
    backend:
        build:
            context: ./TestApi/TestApi
            dockerfile: Dockerfile
        image: proj2:latest
        networks:
            - overlay
        ports: 
        - '5001:5001'
        depends_on:
        - db
    db:
        image: "mcr.microsoft.com/mssql/server"
        environment:
            SA_PASSWORD: "xxx"
            ACCEPT_EULA: "Y"
        ports:
            - "1433:1433"
        networks:
            - overlay
        volumes:
            - mainvolume:/var/lib/
networks:
  overlay:

volumes:
  mainvolume:
   external: true

非常感谢您的帮助

0 个答案:

没有答案