django - Docker-compose 添加 Postgres 密码

标签 django postgresql docker docker-compose

我在从我的远程机器访问我的 postgres 数据库时遇到问题。我正在从 digitalOcean Droplet 运行 docker-compose(django 和 postgres),所以我需要能够从我的 mac 访问数据库。

我认为下面的内容基于 docker-compose 中的环境使用大纲。任何帮助将不胜感激。

db:
  image: postgres
  ports:
    - "5555:5555"
  environment:
    - POSTGRES_PASSWORD=mysecretpassword
    - POSTGRES_USER=postgres
web:
  build: .
  command: python manage.py runserver 0.0.0.0:8000
  volumes:
    - .:/code
  ports:
    - "8000:8000"
  links:
    - db

我正在尝试从端口 5555 上的 pgadmin3 访问 postgres 数据库,用户:postgres,密码:mysecretpassword。

最佳答案

Postgres 默认使用端口 5432。您可以将容器内的5432端口映射到带有冒号的5555主机post(如下图)。

db:
  image: postgres
  ports:
    - "5555:5432"
  environment:
    - POSTGRES_PASSWORD=mysecretpassword
    - POSTGRES_USER=postgres

您的数据库现在可以通过端口 5555 访问。

我没有使用过 pgAdmin,但是使用 psql 可以使用...访问数据库

psql -U postgres -h <your ip> -p 5555

关于django - Docker-compose 添加 Postgres 密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29464156/

相关文章:

django - 以编程方式创建组 : Can't access permissions from migration

python - Django 错误 ImportError at/cannot import name models

database-design - 包含 TB 及以上规模数据的 Elasticsearch 集群的推荐设置是什么?

python - 访问远程相关 Django 模型的最佳实践

python - Django 根据 url 请求预填写表单下拉框

postgresql - "postgres"数据库在 PostgreSQL 中是否始终可用?

postgresql - 以liquibase格式从数据库导出数据

java - preparedStatement.getBigDecimal 其中值为 null

docker - 用于调试的 Golang docker 文件

docker - 在Docker中使用包含 “,”的shell命令