在云效中这里增加一个清缓存的入口可以吗?

9f1fc3df014bc8501f10f1b5fb74d748.png
在云效中这里增加一个清缓存的入口可以吗?

展开
收起
花开富贵111 2024-02-06 13:39:46 75 分享 版权
阿里云 AI 助理回答

在云效中增加一个清缓存的入口是可行的,但需要根据具体的缓存类型和使用场景来选择合适的清理方式。以下是详细的解答和操作建议:


1. 云端缓存清理

云端缓存主要用于公共构建集群,缓存文件存储在云效托管的OSS上。如果需要清理云端缓存,可以通过以下方式实现:

  • 流水线编辑页面清理: 在流水线编辑页面中,进入“变量与缓存”设置,点击“清理缓存”按钮即可清除当前流水线的所有云端缓存。

    • 效果:下次任务构建时,将没有缓存文件被下载和解压,但运行结束后仍然会将指定目录的文件打包上传。
    • 限制:超过3个月未更新的缓存会被自动清理。
  • 手动触发清理: 如果需要更灵活的清理方式,可以在流水线的任务配置中添加一个自定义脚本步骤,调用清理命令或API(如果有相关接口支持)。


2. 本地缓存清理

本地缓存主要用于私有构建集群,缓存文件存储在构建机上。清理本地缓存需要通过云效提供的缓存清理工具完成。

清理工具的使用方法:

  1. 执行清理命令: 使用以下命令运行缓存清理工具:

    docker run -v /var/run/docker.sock:/var/run/docker.sock -v /root/yunxiao:/root/yunxiao registry.cn-beijing.aliyuncs.com/build-steps/cache-cleaner:0.0.3-20230914183240
    
    • 清理内容
      • 已停止的容器。
      • 悬空无tag的镜像。
      • 自定义环境构建产生的中间镜像。
      • /root/yunxiao/*/runner/目录下的旧日志和缓存文件(如3天前的日志、15天未更新的缓存目录)。
  2. 定期清理: 建议将上述命令配置到cronjob中,定期执行清理任务,避免磁盘空间不足导致流水线运行失败。


3. 增加清缓存入口的建议

如果希望在云效中增加一个专门的清缓存入口,可以考虑以下方案:

方案一:在流水线界面增加清理按钮

  • 功能描述:在流水线的“变量与缓存”页面中,增加一个“清理缓存”的按钮,用户点击后可以选择清理云端缓存或本地缓存。
  • 适用场景:适用于需要快速清理缓存的用户,尤其是云端缓存的清理。

方案二:提供清理API

  • 功能描述:为云效提供一个清理缓存的API接口,用户可以通过调用API实现自动化清理。
  • 适用场景:适用于需要集成到CI/CD流程中的自动化清理需求。

方案三:在私有构建集群管理页面增加清理工具入口

  • 功能描述:在私有构建集群的管理页面中,增加一个“运行清理工具”的按钮,用户点击后直接运行缓存清理工具。
  • 适用场景:适用于私有构建集群的管理员,方便快速清理构建机上的缓存。

4. 重要提醒

  • 缓存清理的影响

    • 清理缓存后,下次构建时需要重新下载依赖文件,可能会导致构建时间增加。
    • 建议:仅在必要时清理缓存,例如缓存文件过大或缓存内容过期。
  • 缓存限制

    • 云端文件缓存压缩后超过2G则不会上传。
    • 镜像构建缓存超过5G则不会上传。
  • 私有构建集群的网络问题

    • 如果私有构建集群与云端网络不稳定,建议优先使用本地缓存以提高构建效率。

通过以上方法,您可以根据实际需求选择合适的缓存清理方式,并在云效中增加清缓存的入口以提升操作便利性。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答地址:

云效,企业级一站式研发协同平台,数十万企业都在用。支持公共云、专有云和混合云多种部署形态,通过云原生新技术和研发新模式,助力创新创业和数字化转型企业快速实现研发敏捷和组织敏捷,打造“双敏”组织,实现多倍效能提升。

还有其他疑问?
咨询AI助理