私はドッカーコンテナを作成しました。このデータベースコンテナは正常に実行されます。私はこのコンテナに接続し、データベースのすべての詳細を見ることができます。ここではいくつかの設定です。ここでDocker:postgresクライアントはデータベースコンテナに接続することはできません
services:
db:
container_name: db
image: postgres:latest
ports:
- "5432:5432"
environment:
POSTGRES_USER: abc
POSTGRES_PASSWORD: abc
POSTGRES_DB: database_dev
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- postres_volume:/var/lib/postgresql/data/
が、私はこの実行しているコンテナから検査情報です:
"NetworkSettings": {
"Bridge": "",
"Ports": {
"5432/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "5432"
}
]
},
"Networks": {
"medusa_default": {
"IPAMConfig": null,
"Links": null,
"Aliases": [
"74f7f48596e3",
"db"
],
"NetworkID": "d48bbf5453a7c42facda69a8c2c741a20bc18d35238854c00f068bd19119afc4",
"EndpointID": "5587658ae084eba71e65fb4712bc75a0ea7c240b600d77d4b4722f5a91818d73",
"Gateway": "172.19.0.1",
"IPAddress": "172.19.0.5",
"IPPrefixLen": 16,
"IPv6Gateway": "",
}
}
は、これらの情報に基づいて、私はそのようなPgAdmin4やAdminerなど、いくつかのPostgresのクライアントを試してみて、これらの情報を使用して:
host: 172.19.0.5 (get from inspect)
port: 5432 (get from inspect)
user name: abc (get from docker-compose config)
password: abc (get from docker-compose config)
database name: abc_dev (get from docker-compose config)
しかし、すべてのクライアントは接続できません。ここで何が間違っているのか分かりません。教えてください。
以前はlocalhostか0.0.0.0で試してみました。しかし、私は "接続拒否"のようなエラーを受けました。 inspectでipを入力すると、大きな待ち時間があります(失敗します)。それが主な違いです。 –
.Ports。 "5432/tcp" .HostIpの値が外部アドレスであることに注意してください。特に指定がない限り、通常は0.0.0.0です。 – Matt
@TrầnKimDự即時接続拒否はポストグルを意味するか、プロキシがポートでリッスンしていません。 'db'コンテナのログを確認する – Matt