升级uptime-kuma版本2.0.0-beta.2的cloudflared版本到2025.4.0

以下是满足需求的 Dockerfile 示例:

dockerfile 复制代码
#复制
# 第一阶段:从 cloudflared 镜像获取二进制文件
FROM cloudflare/cloudflared:2025.4.0 as cloudflared

# 第二阶段:基于 uptime-kuma 镜像构建
FROM louislam/uptime-kuma:2.0.0-beta.2

# 从第一阶段复制 cloudflared 二进制文件到目标路径
COPY --from=cloudflared /usr/local/bin/cloudflared /usr/local/bin/cloudflared

# 确保二进制文件具有可执行权限(部分镜像可能需要显式设置)
RUN chmod +x /usr/local/bin/cloudflared

关键指令说明:

  1. 多阶段构建 :通过 FROM ... as <alias> 定义第一阶段,专门用于提取 cloudflared 文件,避免将整个中间镜像层带入最终镜像
  2. COPY --from :使用 --from=cloudflared 参数从指定构建阶段复制文件到当前镜像,这是 Docker 多阶段构建的核心特性
  3. 权限设置 :通过 RUN chmod 确保二进制文件具有可执行权限(尽管源镜像可能已设置,但显式声明更可靠)

扩展说明:

  • 该 Dockerfile 最终镜像会保留 louislam/uptime-kuma:2.0.0-beta.2 的所有原有功能
  • 通过多阶段构建,最终镜像不会包含 cloudflared 镜像的无关内容,优化了镜像体积
  • 如果目标路径 /usr/local/bin 不存在,COPY 指令会自动创建目录(Docker 17.09+ 支持)

构建命令:

bash 复制代码
docker build -t uptime-kuma:2.0.0-beta.2-cloudflared-2025.4.0 .

验证方法:

bash 复制代码
docker run --rm -it uptime-kuma:2.0.0-beta.2-cloudflared-2025.4.0  /usr/local/bin/cloudflared -v
# 应显示文件存在且具有可执行权限(-rwxr-xr-x)

已经制作好镜像了,可以直接下载

bash 复制代码
docker pull docker.cnb.cool/masx200/docker_mirror/uptime-kuma:2.0.0-beta.2-cloudflared-2025.4.0
相关推荐
养-乐多7 分钟前
梳理Spring Boot中三种异常处理
java·spring boot·后端
Code哈哈笑16 分钟前
【基于SpringBoot的图书购买系统】深度讲解 分页查询用户信息,分析前后端交互的原理
java·数据库·spring boot·后端·spring·交互
白总Server29 分钟前
Golang基于 Swagger + JWT + RBAC 的认证授权中间件设计
linux·运维·服务器·架构·go·bash·jwt
.生产的驴37 分钟前
Vue3 数据可视化屏幕大屏适配 页面自适应 响应式 数据大屏 大屏适配
java·c++·vue.js·后端·信息可视化·前端框架·vue
熬夜苦读学习41 分钟前
线程封装与互斥
linux·运维·服务器·开发语言·c++
源码云商42 分钟前
基于 Spring Boot + Vue 的墙绘产品展示交易平台设计与实现【含源码+文档】
vue.js·spring boot·后端
若水晴空初如梦42 分钟前
QT聊天项目DAY12
运维·服务器
编写美好前程1 小时前
Spring Boot 内置工具类汇总与讲解
spring boot·后端·python
西阳未落1 小时前
Linux(5)——再谈操作系统
linux·运维·服务器
万里不留行1 小时前
SRS流媒体服务器,配置国标协议对接和HTTPS视频流输出功能
运维·服务器·https·音视频·实时音视频