从外部访问 Dokku 容器内的 Postgres 数据库
Accessing Postgres database inside Dokku container from outside
我很难找到一种方法来使用 pgAdmin 从计算机外部访问 Dokku 容器(基于 docker)内的 Postgres 数据库。有没有办法做到这一点?我需要使用不同的客户端吗?我正在使用 dokku postgres:expose
命令公开数据库。
要连接 pgadmin,您可以从 DATABASE_URL.
获得所有必要的信息
➜ ~ dokku postgres:info your-database-db
DSN: postgres://postgres:bf8f1cb443c35cd1ae0a58617ef348cd@dokku-postgres-your-database-db:5432/your_database_db
因为dokku和heroku有相同的基础,你可以提取信息连接pg数据库。重要的考虑因素是 dokku 生成一个随机端口来公开您的数据库。您可以获得一个随机端口或设置任何您想要的端口。
[database type]://[username]:[password]@[host]:[port]/[database name]
公开数据库并获取真实端口:
➜ ~ dokku postgres:expose your-database-db
! Service is already started
-----> Service your-database-db exposed on port(s) 17825
现在,您将在您的 pg 管理员中添加下一个信息,并希望能够顺利连接。
username: postgres
password: bf8f1cb443c35cd1ae0a58617ef348cd
hostname: Your-Dokku-Host-URL (Ex. domain.com or IP of your dokku server)
port: 17825
此外,如果您是 运行 dokku in AWS EC2,例如,您需要允许访问实例上的此端口,添加 Custom TCP Rule在 安全组 的 入站 部分中与此实例关联。
希望对您有所帮助。
我很难找到一种方法来使用 pgAdmin 从计算机外部访问 Dokku 容器(基于 docker)内的 Postgres 数据库。有没有办法做到这一点?我需要使用不同的客户端吗?我正在使用 dokku postgres:expose
命令公开数据库。
要连接 pgadmin,您可以从 DATABASE_URL.
获得所有必要的信息➜ ~ dokku postgres:info your-database-db
DSN: postgres://postgres:bf8f1cb443c35cd1ae0a58617ef348cd@dokku-postgres-your-database-db:5432/your_database_db
因为dokku和heroku有相同的基础,你可以提取信息连接pg数据库。重要的考虑因素是 dokku 生成一个随机端口来公开您的数据库。您可以获得一个随机端口或设置任何您想要的端口。
[database type]://[username]:[password]@[host]:[port]/[database name]
公开数据库并获取真实端口:
➜ ~ dokku postgres:expose your-database-db
! Service is already started
-----> Service your-database-db exposed on port(s) 17825
现在,您将在您的 pg 管理员中添加下一个信息,并希望能够顺利连接。
username: postgres
password: bf8f1cb443c35cd1ae0a58617ef348cd
hostname: Your-Dokku-Host-URL (Ex. domain.com or IP of your dokku server)
port: 17825
此外,如果您是 运行 dokku in AWS EC2,例如,您需要允许访问实例上的此端口,添加 Custom TCP Rule在 安全组 的 入站 部分中与此实例关联。
希望对您有所帮助。