问题

最近用docker-compose创建了两个容器如下

但是打开pgadmin在线网址http://localhost:8080/browser/想添加一个server,却发现报错如下

解决方法

既然localhost不行那就说明此处data-db-1的ip不是localhost。

  1. 打开命令行工具输入
1
docker inspect data-db-1 # data-db-1是我想连接的容器名,用id也行

输出结果是一个很长的json结构,定位到这里

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
"Networks": {
"data_default": {
"IPAMConfig": null,
"Links": [
"data-pgadmin-1:pgadmin",
"data-pgadmin-1:pgadmin-1",
"data-pgadmin-1:data-pgadmin-1"
],
"Aliases": [
"data-db-1",
"db",
"3f2cfd4d0cc2"
],
"NetworkID": "ef567cb7a9580f2f930d39c5a2302532a68e2def73cb5ce19254d5b2282fe9ab",
"EndpointID": "fb666bad0f9b1f0a05403db27dd60c7f85061963273960957040c7f1712e8c71",
"Gateway": "172.18.0.1",
"IPAddress": "172.18.0.3", # 关注这里
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:12:00:03",
"DriverOpts": null
}
}
  1. pgadmin->连接->主机名称/地址 处的localhost 替换成 172.18.0.3 (这是我的,你应该替换为你的)
  2. done!🎉🎉🎉