如何在 Kuscia 中使用自定义镜像仓库

打开链接即可点亮社区Star,照亮技术的前进之路。

Github 地址:github.com/secretflow/...

Kuscia支持自动拉取远程的应用镜像(比如:SecretFlow 等),这样可以不用手动导入镜像到容器中。可以在 Kuscia 配置文件中配置私有(or 公开)镜像仓库地址。

如何配置使用自定义镜像仓库

配置文件中的 image 字段用来配置自定义仓库。相关含义参考 Kuscia 配置文件说明

私有镜像仓库

如果有一个私有镜像仓库(示例:private.registry.com),对应的配置如下:

yaml 复制代码
- image:
  - defaultRegistry: private # It doesn't matter, as long as it corresponds to <image.registries[0].name>
  - registries:
    - name: private
      endpoint: private.registry.com/test
      username: testname
      password: testpass

公开镜像仓库

如果使用公开的镜像仓库(示例:secretflow-registry.cn-hangzhou.cr.aliyuncs.com),对应的配置如下:

yaml 复制代码
- image:
  - defaultRegistry: aliyun # It doesn't matter, as long as it corresponds to <image.registries[0].name>
  - registries:
    - name: aliyun
      endpoint: secretflow-registry.cn-hangzhou.cr.aliyuncs.com/secretflow

关于镜像仓库和AppImage的搭配使用

配置文件中有image字段,AppImage 中也存在image相关的配置,他们的搭配关系示例如下:

配置文件 AppImage配置 实际镜像地址 备注
无配置 secretflow/app:v1 docker.io/secretflow/app:v1
无配置 private.registry.com/secretflow/app:v1 private.registry.com/secretflow/app:v1
private.registry.com secretflow/app:v1 private.registry.com/app:v1
private.registry.com/secretflow app:v1 private.registry.com/secretflow/app:v1 推荐配置
private.registry.com/secretflow secretflow/app:v1 private.registry.com/secretflow/app:v1
private.registry.com/secretflow test/app:v1 private.registry.com/secretflow/app:v1
private.registry.com/secretflow private.registry.com/secretflow/app:v1 private.registry.com/secretflow/app:v1
private.registry.com/secretflow public.aliyun.com/secretflow/app:v1 public.aliyun.com/secretflow/app:v1 强烈不推荐配置,未来可能会禁止这种配置

注:Kuscia推荐在 AppImage 中只配置镜像名(不带镜像仓库地址),否则切换仓库的时候,需要批量修改AppImage,所以不建议如此配置。

镜像拉取失败

当发现镜像拉取失败时,请确认 配置文件中仓库地址,以及账密相关配置是否正确, 以及参考上文,确保 AppImage 的镜像地址配置正确.

vbnet 复制代码
2024-06-06 13:33:00.534 ERROR framework/pod_workers.go:978 Error syncing pod "ant-test-0_ant(7fd5285b-2a5c-4a75-930a-2908e98c8799)", skipping: failed to "StartContainer" for "test" with ErrImagePull: "faile to pull image \"registry.xxxx.com/secretflow/nginx:v1\" with credentials, detail-> rpc error: code = Unknown desc = failed to pull and unpack image \"registry.xxxx.com/secretflow/nginx:v1\": failed to resolve reference \"registry.xxxx.com/secretflow/nginx:v1\": unexpected status from HEAD request to https://registry.xxxx.com/v2/secretflow/nginx/manifests/v1: 401 Unauthorized"
相关推荐
冬奇Lab1 天前
每日一个开源项目(第135篇):codebase-memory-mcp - 给 AI Agent 一张代码库的知识图谱
人工智能·开源·llm
uniquejing2 天前
《每次 API 调用前扔掉 43% Token,我开源了一个 AI 提示词瘦身工具》
开源
文心快码BaiduComate3 天前
Comate 搭载GLM-5.2:百万上下文,稳定支撑长程任务
前端·程序员·开源
冬奇Lab4 天前
每日一个开源项目(第133篇):EchoBird - 把 AI 工具的安装和部署做成傻瓜操作
人工智能·开源·资讯
下班走回家4 天前
DeepSeek 开源模型的突破与思考:从技术到生态的全面进化
人工智能·开源
ApacheSeaTunnel4 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
国产化创客4 天前
ESP32 CameraWebServer 原生摄像头项目全解析
物联网·开源·嵌入式·实时音视频·智能硬件
ofoxcoding4 天前
GLM 5.2 使用教程:API 接入配置、价格说明及 MIT 开源权重发布计划
ai·开源
X54先生(人文科技)4 天前
《元创力》纪实录·卷宗2.2 会议室的裂缝:当“真实高于完美”第一次被写在会议纪要里
人工智能·开源·ai写作·零知识证明
IvorySQL4 天前
PostgreSQL 技术日报 (6月15日)|PG19 性能优化推进,POSETTE 大会倒计时 2 天
数据库·人工智能·postgresql·开源