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

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

相关推荐
木头左22 分钟前
【Nginx】内网服务源 IP 白名单实战:动态域名解析放行网段 + 端口接管零改造
运维·nginx·白名单·反向代理
禁默1 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk81632 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
翔云1234563 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
爱莉希雅&&&4 小时前
GitLab 完整学习笔记
linux·运维·服务器
java_logo4 小时前
Docker 部署 EmulatorJS:轻松搭建浏览器复古游戏平台
游戏·docker·容器·复古游戏·轩辕镜像·emulatorjs·红白机
小杨爱科普5 小时前
制造业上自动化改造,改造部分的专利到底归谁
运维·经验分享·自动化
吴声子夜歌5 小时前
Kubernetes权威指南——网络原理(一)
网络·容器·kubernetes
方便面不加香菜6 小时前
Docker Container --容器及容器的操作案例详解
运维·docker·容器
AR-26710-10 小时前
Linux Day32——实操五类资源告急排查
linux·运维