Postgresql 在Windows10 docker上部署踩坑教程

背景:最近在学卡哥的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文件并执行即可

建表结果如下

相关推荐
运维行者_3 小时前
企业无线网络监控的挑战与智能化演进趋势
大数据·运维·服务器·网络·数据库
2603_955279704 小时前
Cursor + GitOps:自动化运维新姿势
运维·自动化
Waay4 小时前
面试口述版:个人对 Prometheus 完整理解
运维·学习·云原生·面试·职场和发展·kubernetes·prometheus
三8445 小时前
文件查找/文件压缩/解压缩
linux·运维·服务器
小猪写代码5 小时前
Linux 管道(Pipeline)作业
linux·运维·服务器
桌面运维家5 小时前
如何用半缓存云桌面将服务器硬盘容量扩展至本地终端?
运维·服务器·缓存
激情的学姐5 小时前
【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器
运维·nginx
ai_coder_ai6 小时前
编写自动化脚本,在自己后端服务中使用Open Api进行设备相关操作
java·运维·自动化
spider_xcxc7 小时前
Redis 数据库高质量实践指南(一)
运维·数据库·redis·oracle·云计算
2501_943782358 小时前
【共创季稿事节】摇骰子:用 ArkTS 实现随机动画与交互反馈
运维·nginx·交互·harmonyos·鸿蒙·鸿蒙系统