公司动态
pgvector Docker 镜像拉取失败?没有 latest 标签,一张对照表加一条命令解决
pgvector Docker 镜像拉取失败没有 latest 标签一张对照表加一条命令解决【免费下载链接】pgvectorOpen-source vector similarity search for Postgres项目地址: https://gitcode.com/GitHub_Trending/pg/pgvector用 docker pull 拉 pgvector 镜像时报 latest 标签不存在这不是网络问题这个镜像本来就按 PostgreSQL 主版本分标签没有 latest。本文带你确认版本、选对 tag、一条命令验证扩展装好。报错 latest 不存在先别怀疑网络直接执行docker pull pgvector/pgvector终端大概率回你一句类似 manifest for pgvector/pgvector:latest not found。换网络、换镜像源再试结果一样。 这时候别慌也别查代理。这个 pgvector 镜像故意不准备 latest 标签默认拉取失败是预期行为不是你的环境坏了。pg 后面的数字到底是什么标签跟着 PostgreSQL 主版本走为什么不留一个 latest因为 pgvector 是装在 Postgres 里面的扩展内部接口跟 PG 主版本强绑定16 上编出来的产物不一定能塞进 14。所以镜像按 PostgreSQL 主版本逐个打标签pg13、pg14、pg15、pg16……一个主版本一个标签不存在通用版。翻仓库里的 README.md Docker 一节能看到完整标签清单构建用的 Dockerfile 也是FROM postgres:$PG_MAJOR这种写法基础镜像版本直接就是你要的主版本。⚠️ 记住这点标签里的数字不是 pgvector 的版本号而是它适配的 PostgreSQL 主版本。拉错版本比如在 16 的库上用 pg15 镜像要等后面加载扩展时才暴露问题。怎么查当前 PostgreSQL 主版本拉镜像之前先把主版本号确认下来。两条路任选psql --version # 或连上库执行 SQLSELECT version();看输出的第一位数字就行16.x 说明你在 16 上14.x 就对应 pg14 的标签。小版本号不用管标签只认主版本。pg 版本标签对照从 pg13 到 pg16 该选哪个主版本号抄下来之后对着这张表选标签PostgreSQL 主版本镜像标签13pgvector/pgvector:pg1314pgvector/pgvector:pg1415pgvector/pgvector:pg1516pgvector/pgvector:pg16数字对上了就放心拉。较新的 PostgreSQL17 及以上在发布里同样有对应标签照旧按主版本查表即可。以 16 为例你在 14 就把标签换掉# 标签必须和查到的主版本一致 docker pull pgvector/pgvector:pg16 docker run -d --name pgvec -e POSTGRES_PASSWORDtest123 pgvector/pgvector:pg16一条命令验证扩展装好了没有镜像拉到本地不等于扩展能用还要在数据库里激活docker exec -it pgvec psql -U postgres -c CREATE EXTENSION vector; docker exec -it pgvec psql -U postgres -c \dx\dx输出里出现 vector 这个名字加版本号当前是 0.8.6说明扩展就绪。想直接试功能再跑一条SELECT [1,2,3]::vector;能返回三维向量整条链路就通了。如果 CREATE EXTENSION 报错先确认容器确实是 pgvector 镜像而不是原生 postgres 镜像用docker images看一眼镜像名。多环境部署钉死同一个主版本开发、测试、生产统一 PG 主版本标签到处一样省掉换个环境就炸的排查时间。把标签写进 compose 或脚本时精确钉死写 pg16不写 latest保证随时能重新拉起一样的环境。以后真要升主版本比如 16 换 17记得换标签并重新跑一遍扩展验证。 现在就去终端跑一条psql --version把主版本号抄下来——后面只剩换标签这一个动作。【免费下载链接】pgvectorOpen-source vector similarity search for Postgres项目地址: https://gitcode.com/GitHub_Trending/pg/pgvector创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考