環境
- Windows 10
- Dockerのdbコンテナ内にPostgreSQLがインストールされています
- SQLクライアント: HeidiSQL
※OS、DB、クライアント、の種別に特にこだわりはございません。
##質問
現在、Windows上のHeidiSQLというクライアントアプリからdbコンテナ内のPostgreSQLに接続を試みているのですが、接続できません。IPアドレスの設定が間違っているような気がしているのですが。
dockerコンテナのどこの設定を参照すればログインできるのか、教えていただけますでしょうか。
MySQLなど他のDBでの事例でも構いません。ご不明な点などは適宜追記してまいりますので、解決のヒントをいただけると大変ありがたく存じます。
##これまでに確認したこと
コマンド「docker exec -it コンテナ名 bash」でdbコンテナに入って取得したIPアドレスなどでも試しましたが、接続できずエラーになりました。0.0.0.0 や、127.0.0.1 や、localhost なども試してみましたが変化はないように見えました。
####■cmd経由でdbコンテナのPostgreSQLにはログイン可能
commandprompt
1>docker-compose exec db psql -Upostgres 2psql (11.9 (Debian 11.9-1.pgdg90+1)) 3Type "help" for help. 4 5postgres=#
#####■使用したdocker-compose.yml
dockercompose
1version: '3.7' 2 3services: 4 db: 5 container_name: db 6 image: postgres:11 # 7 volumes: 8 - ./dbdata:/var/lib/postgresql/data 9 restart: always 10 environment: 11 POSTGRES_USER: ${POSTGRES_USER} 12 POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} 13 POSTGRES_DB: ${POSTGRES_DB} 14 POSTGRES_INITDB_ARGS: ${POSTGRES_INITDB_ARGS}
#####■使用したdockerコンテナのPORTS等
commandprompt
1>docker ps 2# dbコンテナの 3IMAGE: postgres:11 4PORTS: 5432/tcp 5NAMES: db
#####■dbコンテナのIPアドレスは172.18.0.2
commandprompt
1>docker exec -it 808f24303074 bash 2root@808f24303074:/# cat /etc/hosts 3127.0.0.1 localhost 4::1 localhost ip6-localhost ip6-loopback 5fe00::0 ip6-localnet 6ff00::0 ip6-mcastprefix 7ff02::1 ip6-allnodes 8ff02::2 ip6-allrouters 9172.18.0.2 808f24303074
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/24 00:27
2020/09/24 02:05