【发布时间】:2020-09-14 07:05:24
【问题描述】:
我无法使用 docker-compose 将 postgresDB 连接到我的应用程序
我对 docker compose 的理解是,我可以将两个容器组合起来,让它们相互通信。假设我在appcontainer 中有一个运行 psql 命令的应用程序(只是一个带有os.command("psql") 的单行python 脚本)。由于app 容器没有安装postgres,它不能自己运行psql。但是,我认为在 docker-compose.yml 中组合两个容器可以让我运行 psql,但显然不行。
我在这里错过了什么?
我正在使用 2 张 postgres 图像,因为我试图在两个 dbms 之间找到回归错误
version: "3"
services:
app:
image: "app:1.0"
depends_on:
- postgres9
- postgres12
ports:
- 8080:80
postgres9:
image: postgres:9.6
environment:
POSTGRES_PASSWORD: mysecretpassword
POSTGRES_USER: postgres
POSTGRES_DB: test_bd
ports:
- '5432:5432'
postgres12:
image: postgres:12
environment:
POSTGRES_PASSWORD: mysecretpassword
POSTGRES_USER: postgres
POSTGRES_DB: test_bd
ports:
- '5435:5435'
【问题讨论】:
-
从
app容器中,您应该能够telnet postgres9 5432。你得到了什么?
标签: postgresql docker docker-compose psql