开发过程中,如果需要连接一个可用的本地 PostgreSQL 数据库,那么通过 Docker Compose 在本地运行 数据库 PostgreSQL 就很有必要了。
肯定是需要安装 Docker 的。
创建一个放置数据库以及数据的目录。
mkdir postgres-docker
cd postgres-docker
创建 docker-compose.yml 文件
在项目目录中,创建一个名为docker-compose.yml
的文件并添加以下配置:
services:
db:
image: postgres:latest
container_name: local-postgres
environment:
POSTGRES_USER: <postgres_user>
POSTGRES_PASSWORD: <postgres_password>
POSTGRES_DB: <postgres_db>
ports:
- "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data 或 /postgres-docker/postgresql/data
- ./init.sql:/docker-entrypoint-initdb.d/init.sql # Optional: initialize with SQL script
volumes:
postgres_data:
请将
<postgres_user> <postgres_password> <postgres_db> 替换为自己真实的配置信息。
/var/lib/postgresql/data 为 Linux 下路径。
/postgres-docker/postgresql/data 为 Windows 下路径, 第一个 / 表示当前盘的根目录
5432:5432 映射允许通过端口 5432 本地访问数据库。
postgres_data:即使在停止容器后也保留 PostgreSQL 数据。
init.sql:可选的 SQL 脚本,在容器启动时自动运行(也可以自定义此文件以进行初始配置)。
使用
docker-compose up -d
即可启动服务了。当然了,通过 docker desktop 也可以管理。
使用命令行
psql -h localhost -p 5432 -U postgres_user -d postgres_db
即可连接数据库了,或者通过 GUI 工具也可以。