背景:最近在学卡哥的java agent,在项目环境配置这里卡了好久,终于解决,故写一篇记录自己的踩坑过程。
一、前提准备:安装并配置 Docker Desktop
这里网上都有,就不赘述了,随便搜一个教程就行
安装完成后,打开 Windows 终端,输入,若能正常返回 Docker 版本信息,说明环境配置成功:
bash
C:\Users\Harvey Zhou>docker --version
Docker version 29.1.3, build f52814d
最好把镜像源也给配置一下
二、拉取带有 pgvector 插件的 PostgreSQL 镜像
由于拉取国外的镜像比较慢,这里推荐一个镜像网站https://docker.aityp.com/
搜索带有pgvector的postgresql,复制国内镜像源拉取


使用docker pull 命令拉取,成功后在docker界面显示如下

三、创建并运行 PostgreSQL 容器
在这里博主就踩了许多坑,尤其是一直设置不了数据库密码,导致无法正常启动postgresql
使用docker run命令创建容器,同时配置端口映射、密码、数据持久化等关键参数,命令如下
bash
docker run -it --name postgresql -p 5432:5432 -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=123456 -e POSTGRES_DB=vector_db -v postgres-data:/var/lib/postgresql/data -d swr.cn-north-4.myhuaweicloud.com/ddn-k8s/ghcr.io/immich-app/postgres:16-vectorchord0.3.0-pgvectors0.2.1
dff13f85c50bcfdcd793084d4237fdfad0c5879528c90aac205b7d48386bfc23
其中
bash
--name postgres-pgvector \ # 容器名称,方便后续在Docker界面识别
-p 5432:5432 \ # 端口映射:主机5432端口 → 容器5432端口(PostgreSQL默认端口)
-e POSTGRES_USER=postgres \ # PostgreSQL超级用户名称
-e POSTGRES_PASSWORD=123456 \ # PostgreSQL超级用户密码(可自定义,建议修改为强密码)
-e POSTGRES_DB=vector_db \ # 初始化创建的数据库名称
-v postgres-pgvector-data:/var/lib/postgresql/data \ # 数据卷挂载:持久化PostgreSQL数据(容器删除后数据不丢失)
pgvector/pgvector:pg15 # 镜像名称(与步骤1拉取的镜像保持一致)
如果你不是和我选择一样的镜像的话,只需要改动-d后面的代码,把docker Image界面中的container和Tag拼在一起,用分号连接上。

运行完成后,在cmd中输入docker ps -a,如果有输出,则证明Postgresql容器建立完成
使用 PgAdmin连接数据库,配置如下,根据自己的配置自行修改

四、创建数据库及建表
Pgdmin中提供了可视化的数据库和建表方式,直接用
建jchatmind数据库后,点击Query Tool,导入卡哥的sql文件并执行即可

建表结果如下
