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. 启动主库

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();"

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

相关推荐
程序员阿明1 小时前
docker搭建视频流服务go2rtc,webRTC
docker·容器·webrtc
南棋网络安全2 小时前
ssrf跨站请求伪造(保姆级教程)
运维·服务器·网络·网络安全
帷幕落秋2 小时前
进程服务与文件描述符
linux·运维·面试
帷幕落秋2 小时前
信号、Ctrl 组合键与进程状态
linux·运维·面试
TTATTC2 小时前
让 16 个 AI 员工在飞书群自我协同:基于 OpenClaw 的多 Agent 敏捷 Squad 拓扑与一人公司实操
docker·开源
TTATTC2 小时前
从分片续传到 SPI 插件化扩展:Free-FS 企业级文件系统核心架构与万能预览技术拆解
docker·开源
开开心心就好2 小时前
文件被占用删不掉?解锁工具强制删除
java·运维·服务器·开发语言·前端·pdf·ocr
小超人诞生日记2 小时前
Linux 进程优先级
linux·运维·服务器
科技象限3 小时前
数据防泄漏系统:文件是怎么溜出门的,就该怎么堵
运维·网络·网络安全·安企神