Docker Swarm,Compose和PostgreSQL

我试图运行一个依赖于postgres数据库的容器化应用程序。 我正在使用Swarm和docker-compose来pipe理它。

我对Swarm集群( docker volume create --name=my_data )的一部分主机手动创build一个卷,并在我的撰写文件中使用这个卷。 我在撰写文件中说,音量是外部的。

我发现,当容器启动数据量和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