记录 RTPEngine Dockerfile 的调试过程

找了个 debian 13(trixie,目前版本为 13.1) 虚拟机,安装 ngcp-rtpengine mr13.5.1,很容易就成功了

本想据此编写一个 Dockerfile 是件很容易的事情

But 打脸了

第一个版本

cat Dockerfile, 内容为:

FROM debian:trixie

COPY sipwise_mr13.4.gpg /etc/apt/keyrings/

COPY <<-"EOT" /etc/apt/sources.list

deb http://mirrors.huaweicloud.com/debian/ trixie main non-free non-free-firmware contrib

deb http://mirrors.huaweicloud.com/debian-security/ trixie-security main

deb http://mirrors.huaweicloud.com/debian/ trixie-updates main non-free non-free-firmware contrib

deb http://mirrors.huaweicloud.com/debian/ trixie-backports main non-free non-free-firmware contrib

deb [signed-by=/etc/apt/keyrings/sipwise_mr13.4.gpg] https://deb.sipwise.com/spce/mr13.5.1/ trixie main

EOT

RUN apt-get update && apt-get install -y ngcp-rtpengine

结果 build 时提示下面错误信息:

10.60 W: Failed to fetch https://deb.sipwise.com/spce/mr13.5.1/dists/trixie/InRelease SSL connection failed: error:0A000086:SSL routines::certificate verify failed / Success [IP: 164.132.119.186 443]

10.60 W: Some index files failed to download. They have been ignored, or old ones used instead.

10.68 Reading package lists...

问了 deepseek, 回答是需要 update-ca-certificates

debian:trixie 镜像只有 120 M,包含的组件比较有限

访问 huawei 用 http, 没问题

访问 sipwise 用 https,但没有安装 ca,问题就在这里

于是调整成下面这个版本:

FROM debian:trixie

COPY sipwise_mr13.4.gpg /etc/apt/keyrings/

COPY <<-"EOT" /etc/apt/sources.list

deb http://mirrors.huaweicloud.com/debian/ trixie main non-free non-free-firmware contrib

deb http://mirrors.huaweicloud.com/debian-security/ trixie-security main

deb http://mirrors.huaweicloud.com/debian/ trixie-updates main non-free non-free-firmware contrib

deb http://mirrors.huaweicloud.com/debian/ trixie-backports main non-free non-free-firmware contrib

EOT

RUN apt-get update && apt-get install -y ca-certificates

RUN echo 'deb [signed-by=/etc/apt/keyrings/sipwise_mr13.4.gpg] https://deb.sipwise.com/spce/mr13.5.1/ trixie main' > /etc/apt/sources.list.d/sipwise.list

RUN apt-get update && apt-get install -y ngcp-rtpengine

再次 build ,终于成功,版本为mr13.5.1

感谢 deepseek!


写作不易,配得上您的点赞么

如果想让我写点别的,请留言,友好交流

相关推荐
无名3879 天前
OpenSIPS sql_cacher vs sqlops
通信
liulilittle14 天前
LwIP协议栈MPA多进程架构
服务器·开发语言·网络·c++·架构·lwip·通信
liulilittle18 天前
在 Android Shell 终端上直接运行 OPENPPP2 网关路由配置指南
android·linux·开发语言·网络·c++·编程语言·通信
liulilittle21 天前
国际带宽增长与用户体验下降的悖论
网络·网络协议·信息与通信·ip·ux·带宽·通信
liulilittle1 个月前
Linux 内核网络调优:单连接大带宽吞吐配置
linux·运维·服务器·网络·信息与通信·通信
liulilittle1 个月前
Linux内核网络优化:两个网络调优解决方案
linux·运维·服务器·网络·内核·信息与通信·通信
liulilittle1 个月前
OPENPPP2 静态隧道链路迁移平滑(UDP/IP)
开发语言·网络·c++·网络协议·tcp/ip·udp·通信
liulilittle1 个月前
网络编程基础算法剖析:从字节序转换到CIDR掩码计算
开发语言·网络·c++·算法·通信
liulilittle1 个月前
macOS 内核路由表操作:直接 API 编程指南
网络·c++·macos·策略模式·路由·route·通信