Drizzle | 如何在本地设置 PostgreSQL
本指南假定您熟悉
  • 安装最新版 Docker Desktop。请按照您操作系统的说明进行操作。

拉取 PostgreSQL 镜像

从 Docker Hub 拉取最新的 PostgreSQL 镜像。在您的终端中运行 docker pull postgres 以从 Docker Hub 拉取最新版本的 Postgres。

docker pull postgres

或者,您可以使用特定标签拉取首选版本

docker pull postgres:15

Postgres 镜像下载完成后,您可以在 Docker Desktop 的 Images 选项卡中或通过运行 docker images 命令进行检查。

docker images
REPOSITORY   TAG       IMAGE ID       CREATED         SIZE
postgres     latest    75282fa229a1   6 weeks ago     453MB

启动 Postgres 实例

要启动一个新的 PostgreSQL 容器,请运行以下命令

docker run --name drizzle-postgres -e POSTGRES_PASSWORD=mypassword -d -p 5432:5432 postgres
  1. --name 选项将容器命名为 drizzle-postgres
  2. -e POSTGRES_PASSWORD= 选项设置了 POSTGRES_PASSWORD 环境变量,并赋予指定值。
  3. -d 标志以分离模式(在后台)运行容器。
  4. -p 选项将容器上的端口 5432 映射到您主机上的端口 5432,允许 PostgreSQL 通过此端口从您的主机系统访问。
  5. postgres 参数指定了用于容器的镜像。您也可以指定其他版本,例如 postgres:15

您还可以指定其他参数,例如

  1. -e POSTGRES_USER= 选项设置了 POSTGRES_USER 环境变量,并赋予指定值。当此项为空时,Postgres 会使用默认用户。大多数情况下,它是 postgres,您可以在 Docker Desktop 的容器日志中或通过运行 docker logs <container_name> 命令进行检查。
  2. -e POSTGRES_DB= 选项设置了 POSTGRES_DB 环境变量,并赋予指定值。当此项为空时,默认使用 POSTGRES_USER 的值。

要检查容器是否正在运行,请在 Docker Desktop 的 Containers 选项卡中或使用 docker ps 命令进行检查。

CONTAINER ID   IMAGE      COMMAND                  CREATED         STATUS         PORTS                    NAMES
df957c58a6a3   postgres   "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds   0.0.0.0:5432->5432/tcp   drizzle-postgres

配置数据库 URL

要连接到 PostgreSQL 数据库,您需要提供数据库 URL。URL 格式为

postgres://<user>:<password>@<host>:<port>/<database>

您应该用实际值替换占位符。例如,对于已创建的容器,URL 将是

postgres://postgres:mypassword@localhost:5432/postgres

现在您可以在应用程序中使用此 URL 连接到数据库了。