【发布时间】:2016-07-14 16:55:15
【问题描述】:
我一直在尝试使用 docker-compose 来启动一个 postgres container 容器,其中包含一个持久的命名卷。
目标是让不同的 postgres 容器共享相同的持久数据(不是同时!) - 一个容器死亡或被杀死,另一个容器在不丢失以前持久数据的情况下发生。
据我了解,“命名卷”应该替换“数据卷容器”。 但是,到目前为止,发生了以下两种情况之一:
- postgres 容器无法启动,并显示错误消息“错误:找不到容器命令或不存在。”
- 我只为那个特定的容器实现了持久性。如果它被停止并移除并启动另一个容器,我们将从空白开始。
所以,据我了解,postgres 映像确实创建了它自己的卷,它当然绑定到该特定容器。这很好,如果我可以得到那个卷的别名或链接或命名卷的东西。
docker-compose.yml 的当前版本:
version: '2'
services:
db:
image: postgres
restart: allways
volumes:
- myappdb:/var/lib/postgresql/data/
environment:
- POSTGRES_PASSWORD=mysecretpasswordPleaseChangeME
volumes:
myappdb:
driver: local
我是在做一些愚蠢的错误,还是在尝试一些根本不受支持的事情?
- Docker 版本 1.10.3,构建 20f81dd
- docker-compose 版本 1.6.0, 构建 d99cad6
【问题讨论】:
标签: docker spring-boot docker-compose postgresql-9.4