一尘不染

如何使用Docker Compose v2使卷永久化

docker

我意识到其他人也有类似的问题,但这使用的是v2撰写文件格式,对此我一无所获。

我想制作一个非常简单的测试应用程序以与MemSQL一起使用,但是之后无法使卷不被删除docker-compose down。如果我对Docker
Docs的理解正确,那么在未明确告知卷的情况下不应删除卷。一切似乎都可以正常工作,docker-compose up但是先下降然后再上升,所有数据都将从数据库中删除。

作为一种好的实践建议,我将单独的memsqldata服务用作单独的数据层。

这是我的docker-compose.yml:

version: '2'
services:
    app:
        build: .
        links:
            - memsql
    memsql:
        image: memsql/quickstart
        volumes_from:
            - memsqldata
        ports:
            - "3306:3306"
            - "9000:9000"
    memsqldata:
        image: memsql/quickstart
        command: /bin/true
        volumes:
            - memsqldatavolume:/data

volumes:
    memsqldatavolume:
        driver: local

阅读 316

收藏
2020-06-17

共1个答案

一尘不染

这可以追溯到MemSQL的错误文档。memsql/quickstart容器中的MemSQL数据路径/memsql/var/lib/memsql独立安装(以及MemSQL文档中)不同,而且绝对/data不像有人告诉我的那样。

2020-06-17