Docker Compose + Postgres:公开端口

Joe*_*der 11 postgresql docker docker-compose

我目前正在尝试将 Docker 用于我的新 Django/Postgres 项目。我在 Mac 上工作,通常使用 Postico 快速连接到我的数据库。

我曾经像这里一样连接:

在此处输入图片说明

我使用官方 Docker 文档来设置 docker-compose。我现在遇到的问题是,我无法通过 Postico 连接到 postgres 数据库。在我看来,问题来自未公开的端口。

在此处输入图片说明

version: '3'

services:
  db:
    image: postgres
  web:
    build: .
    command: python3 manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    depends_on:
      - db
Run Code Online (Sandbox Code Playgroud)

Mar*_*ark 8

只需将端口映射到主机,将其添加到dbCompose 文件中的服务中:

ports:
  - "5432:5432"
Run Code Online (Sandbox Code Playgroud)

还要确保像这样在撰写文件中设置 postgres 密码变量

environment:
  POSTGRES_PASSWORD: example
Run Code Online (Sandbox Code Playgroud)

默认用户是 postgres,您可以使用POSTGRES_USER变量更改它。

您可以在此处阅读带有所有选项的图像用法:https : //hub.docker.com/_/postgres/