Drizzle | 如何在本地设置 PostgreSQL
This guide assumes familiarity with:
- 安装最新的 Docker 桌面。请按照你的操作系统的说明进行操作。
拉取 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
--name
选项将容器命名为drizzle-postgres
。-e POSTGRES_PASSWORD=
选项使用指定的值设置POSTGRES_PASSWORD
环境变量。-d
标志使容器以分离模式(在后台)运行。-p
选项将容器上的端口5432
映射到主机上的端口5432
,从而允许从主机系统通过此端口访问 PostgreSQL。postgres
参数指定用于容器的镜像。你还可以指定其他版本,例如postgres:15
。
你还可以指定其他参数,例如:
-e POSTGRES_USER=
选项使用指定的值设置POSTGRES_USER
环境变量。当该字段为空时,Postgres 将使用默认用户。大多数情况下,它是postgres
,你可以在 Docker Desktop 的容器日志中检查它,也可以通过运行docker logs <container_name>
来检查。-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 连接到数据库。