PostgresSQL server Docker 安装部署

发布时间:2026/10/24 4:03:36
PostgresSQL server Docker 安装部署

第一步:在有网的机器上打包镜像

找一台能连外网的机器,装好 Docker 后执行:

pgvector 是 PostgreSQL 的一个开源扩展插件,用来在数据库里存储和检索向量(embedding),支持向量相似度搜索(比如余弦相似度、欧氏距离)和 HNSW/IVFFlat 索引。

pgvector/pgvector:pg16这个镜像已经自带了完整的 PostgreSQL 16 数据库,不需要再单独装 PG。

它本质上是官方postgres:16镜像的基础上,预编译安装了 pgvector 扩展(vector数据类型、HNSW/IVFFlat 索引等),启动方式和普通 PG 完全一样。

# 1. 拉取镜像(自带 PG16 + pgvector)

docker pull pgvector/pgvector:pg16

# 2. 导出为离线包

mkdir -p /home/dockerinstall/postgres

docker save -o /home/dockerinstall/postgres/pgvector-pg16.tar pgvector/pgvector:pg16

新建目录

mkdir -p /home/postgres/data/pg16/master

好的,目录换成/home/postgres/data/pg16/master了。按下面步骤走:

1. 赋权

bash

chown -R 999:999 /home/postgres/data/pg16/master chmod 700 /home/postgres/data/pg16/master

2. 启动主库

docker load -i /home/dockerinstall/postgres/pgvector-pg16.tar


bash

docker run -d \ --name pg16-primary \ -p 5432:5432 \ -e POSTGRES_USER=postgres \ -e POSTGRES_PASSWORD='123456' \ -e TZ=Asia/Shanghai \ -v /home/postgres/data/pg16/master:/var/lib/postgresql/data \ --restart always \ postgres:16

3. 确认启动成功

bash

docker logs pg16-primary

看到database system is ready to accept connections就 OK。

4. 验证能连上

bash

编辑

docker exec -it pg16-primary psql -U postgres -c "SELECT version();"

跑完把输出发我,确认没问题后我给你备库的命令。