docker postgres pgadmin 本地连接

17 浏览
0 Comments

docker postgres pgadmin 本地连接

我创建了一个包含nginx、php和postgres的ubuntu镜像。

我想要连接当前镜像内的postgres数据库和我本地机器上的pgadmin

我已经尝试使用docker inspector使用镜像IP与本地的pgadmin进行连接,但是并没有取得很大的成功。我还尝试配置本地的一些端口来使连接工作。

admin 更改状态以发布 2023年5月20日
0
0 Comments

1. 使用Docker安装Postgres

docker run \
  -p 5432:5432 \
  --name container-postgresdb \
  -e POSTGRES_PASSWORD=admin \
  -d postgres

2. 使用Docker安装PgAdmin

docker run \
  -p 5050:80 \
  -e "PGADMIN_DEFAULT_EMAIL=name@example.com" \
  -e "PGADMIN_DEFAULT_PASSWORD=admin" \
  -d dpage/pgadmin4

3. PgAdmin的连接字符串

localhost:80上打开PgAdmin。然后使用以下方式添加一个服务器:

name: container-postgresdb
host: host.docker.internal
database: postgres
user: postgres
password: admin

您还可以使用此方式查找主机地址,它将在输出中列为IPAddress

docker inspect container-postgresdb \
  -f "{{json .NetworkSettings.Networks }}"

此其他文章可能会提供更多信息。

0
0 Comments

这是一个有效的问题,不知道为什么人们感到“似乎不可能回答那个问题”。

所以,以下是我如何做你正在尝试做的事情:

  1. 从Docker Hub中获取postgres镜像

    docker pull postgres:latest
    

  2. 使用以下命令运行容器

    docker run -p 5432:5432 postgres
    

  3. 使用docker的inspect命令找到IP

  4. 使用该IP、PORT、用户名和密码连接PGADMIN

  5. 您还可以像下面这样进行简单的telnet,以确认您是否可以访问docker postgres容器:

    telnet IP_ADDRESS 5432
    

0