在Windows 10上重新启动Docker服务时失去数据持久性

时间:2019-07-04 08:34:34

标签: docker docker-compose windows-10 cassandra-3.0

我正在使用Docker(Desktop 2.0.0.3)和Docker-compose(1.23.2)启动3个服务: 1-PostgreSQL 2-卡桑德拉 3-我的Webapp

问题是,当我在Windows 10上重新启动Docker服务时,我只是在Cassandra上丢失了数据。重新启动容器时不发生,在重新启动Docker服务时不发生在postgresql中

这是我的docker-compose.yml:

   version: '3.1' 

cassandra:
    container_name: cassandra
    image: launcher.gcr.io/google/cassandra3
    ports:
       - '7000:7000'
       - '7001:7001'
       - '7199:7199'
       - '9042:9042'
       - '9160:9160'
       - '9404:9404'

    volumes:
      - /home/cassandra:/var/lib/cassandra  

    restart: always

postgresql:

    container_name: "postgresql"
    image: postgres:11.1-alpine
    restart: always
    environment:
        POSTGRES_DB: mydb
        POSTGRES_USER: postgres
        POSTGRES_PASSWORD: postgres
    volumes:
       - ./startup.sql:/docker-entrypoint-initdb.d/startup.sql 
       - postgresdata:/var/lib/postgresql/data

    ports:
        - 5432:5432


volumes:
   postgresql:
   cassandra:

我可以适当地访问容器,创建键空间,启动我的应用程序,这完全取决于cassandra的可用性...

如果我重新启动容器,创建的键空间和数据仍然存在,如果我重新启动主机中的Docker服务,则数据将被删除。无法弄清楚为什么,我肯定是我的Yaml中有某种错字

希望有人能带来一些启发 谢谢大家

0 个答案:

没有答案