rust:1.54-bullseye镜像安装postgresql-devel提示无法定位包如何解决
问题原因
postgresql-devel 是 RHEL/CentOS/Fedora 等红帽系发行版的 PostgreSQL 开发依赖包名,而 rust:1.54-bullseye 基于 Debian 11(bullseye)属于 Debian 系发行版,对应的包名不一致,所以会提示找不到包。
解决方案
替换为 Debian 系对应的 PostgreSQL 开发依赖包 libpq-dev 即可,推荐使用如下 Dockerfile 指令,同时优化镜像体积:
RUN apt-get update && apt-get install -y --no-install-recommends \ libpq-dev \ && rm -rf /var/lib/apt/lists/*
参数说明:
-y自动确认安装,避免镜像构建过程中卡住等待交互输入--no-install-recommends仅安装必要依赖,减少冗余包体积- 最后删除apt列表缓存,可大幅减小最终镜像的占用空间
可选验证
安装完成后可执行 ldconfig -p | grep libpq.so.5 检查共享库是否已正确部署,确认后再启动应用即可消除报错。
内容的提问来源于stack exchange,提问作者Dolphin
相关产品推荐
相关产品推荐

