如何使用 Docker 安装和运行 PostgreSQL?
在本地机器上安装、运行和管理 Postgres 进行开发不再困难。这里有一个简单的方法,借助 Docker,只需几秒钟即可在一个地方轻松安装和配置所有功能。
现在,跳过安装和配置 PSQL 的所有复杂步骤,即可开始本地开发并使用 GUI 管理数据库。现在,只需几秒钟即可轻松启动基于 Postgres 的应用程序开发。
注意:这是为了简化开发过程,但请遵循在生产环境中单独安装 PSQL 的常规方法。
按照以下说明操作后,您将在机器上安装以下内容:
- Postgres 服务器作为 docker 容器运行(可以通过 CLI、GUI 或其他应用程序访问以进行开发)。
- 可通过 CLI 访问 Postgres 容器。
- PgAdmin4 浏览器版本从 GUI 访问 Postgres 服务器。
先决条件:
- 安装docker
- …没有别的了:)
使用 Docker 安装和配置 PSQL:
在 Linux、Windows 或 Mac 机器的终端或命令提示符中运行以下命令,从 docker-hub 中提取 PSQL。docker run --name postgresql-container -p 5432:5432 -e POSTGRES_PASSWORD=somePassword -d postgres
在上述命令中,将以下内容替换为:
- 可选 -如果需要,可以使用 postgresql-container和一个优选的容器名称。
- somePassword使用密码进行身份验证并连接到 postgres(在带有连接字符串的应用程序中以及 PG-admin 查看器中)。
使用以下命令验证在 0.0.0.0:5432 创建并运行的新容器。docker ps -a
PostgresQL 已准备好连接并使用。Postgres
服务器现在正在您本地计算机的 IP 地址 5432 上运行。
使用 Docker 安装 PG-admin:
使用以下命令从 docker-hub 下载 pgAdmin-4 浏览器版本。docker run --rm -p 5050:5050 thajeztah/pgadmin4
现在通过启动http://localhost:5050从浏览器管理您的 postgres 。
要在 pgAdmin 中连接 PSQL 服务器:
输入凭据以通过 GUI 保存和管理 PSQL。
主机- 您的计算机的 IP 地址
密码- 使用 docker 创建 PSQL 服务器时使用的密码
通过 CLI 连接到 PSQL 服务器:
以下步骤是从 CLI 连接到 psql 服务器:
- 使用以下命令查找 postgres 正在运行的 docker-container-id。
docker ps -a
- 运行以下命令进入容器(使用步骤 1 中的 ID)。
docker exec -it <PSQL-Container-ID> bash
- 进行身份验证以开始以 postgres 用户身份使用。
psql -h localhost -p 5432 -U postgres -W
- 输入创建 PSQL 服务器容器时使用的密码。
通过应用程序连接到 PSQL 服务器:
(例如:JavaScript)
const { Client } = require('pg');
let client = new Client({
connectionString: "postgresql://postgres:test1234@192.168.225.86:5432/postgres"
});
const connectDB = async () => {
try {
console.log('Connect to Postgres ...');
client.connect();
await new Promise((resol, rej) => {
client.query('Select now() as run_at;', (err, res) => {
if(err) {
console.log(err);
reject(err);
} else {
console.log(`Run at date-time : ${res.rows[0].run_at}`);
resol(res.rows[0].run_at);
}
})
});
await client.end();
console.log('Execution Completed ...');
} catch (err) {
console.log('Error while Connecting DB !')
}
}
connectDB();