使用docker-compose,我开发了一个包含Postgresql数据库的网站。我使用相同的docker-compose.yml文件将其部署在服务器上,但我发现我可以使用psql远程访问我的postgres服务器。
我目前在docker-compose中有这几行代码
version: '3.6'
services:
db:
image: postgres
ports:
- 5432:5432
environment:
POSTGRES_DB: my_website
POSTGRES_USER: my_website
POSTGRES_PASSWORD: my_password有人知道我为什么只允许从docker网络内访问postgres数据库,而不能从主机操作系统外部访问它吗?
发布于 2020-05-21 19:52:09
此时,您正在使用ports指令将docker容器中的端口5432绑定到主机端口。要仅在本地扩展坞网络内访问端口,请将ports更改为expose
version: '3.6'
services:
db:
image: postgres
expose:
- "5432"
environment:
POSTGRES_DB: my_website
POSTGRES_USER: my_website
POSTGRES_PASSWORD: my_passwordhttps://stackoverflow.com/questions/61933808
复制相似问题