运行两个docker postgres服务

时间:2018-02-09 09:31:57

标签: postgresql docker

我试图用Docker服务运行两个postgres数据库。我知道他们不能在同一时间运行,所以我想更改端口(而不是docker service create --name account-db --network account -e POSTGRES_PASSWORD=secret_password -p 5432:5432 -d --mount type=volume,source=account,target=/var/lib/postgresql/data postgres:latest

这是启动docker服务的脚本:

{{1}}

所以如果我想在5432上运行一个而在5433上运行另一个,我应该如何实现呢?感谢任何意见/建议

2 个答案:

答案 0 :(得分:2)

-p 5432:5432

这是容器的端口映射。 对于第一项服务,它应该是

-p 5432:5432

对于第二项服务,它应该是

-p 5433:5432

语法是-p [机器的端口]:[容器的端口]

答案 1 :(得分:2)

@vamsi是对的。

但是当您使用节点端口xxxx时,您需要确保xxxx可用。

-p xxxx:5432

如果要自动分配空闲端口,请使用此

-p :5432

将节点端口留空:5432