Docker Swarm、Compose和PostgreSQL
我正在尝试运行一个依赖于postgres数据库的容器化应用程序。我使用Swarm和docker compose来管理它 我针对Swarm集群中的主机手动创建一个卷(Docker Swarm、Compose和PostgreSQL,postgresql,docker,docker-compose,Postgresql,Docker,Docker Compose,我正在尝试运行一个依赖于postgres数据库的容器化应用程序。我使用Swarm和docker compose来管理它 我针对Swarm集群中的主机手动创建一个卷(docker volume create--name=my_data),并在我的撰写文件中使用该卷。我在compose文件中说卷是外部的 我发现,当容器启动时,数据卷和postgres应用程序不一定位于同一位置。如果它们不在同一位置,docker似乎会给我创建一个新卷 进一步的阅读让我相信,我应该看看诸如Flocker之类的批量插件。
docker volume create--name=my_data
),并在我的撰写文件中使用该卷。我在compose文件中说卷是外部的
我发现,当容器启动时,数据卷和postgres应用程序不一定位于同一位置。如果它们不在同一位置,docker似乎会给我创建一个新卷
进一步的阅读让我相信,我应该看看诸如Flocker之类的批量插件。如果我想使用数据库实现swarm应用程序的持久数据,使用这样的卷插件是最佳实践吗
我的撰写文件
version: '2'
services:
ui:
image : ui
ports:
- 8080:8080
environment:
ADDRESS_SERVICE_URI: http://camel:8091
camel:
image : camel
ports:
- 18081:8081
- 18091:8091
expose:
- 8081
- 8091
postgresql:
image: postgres:9.4.5
volumes:
- app1_address_data:/var/lib/postgresql/data
volumes:
app1_address_data:
external: true
networks:
default:
external:
name: my-net
你查过这个了吗?你明白了,需要使用某种卷插件,自动移动你的卷,使它们在主机间可用。