当前位置: 首页 > news >正文

[特殊字符] macOS + Lima 离线下载 Calico 镜像教程

最终目标:在 Mac 主机获得一份包含 Calico 镜像的 .tar 文件,用于离线安装 K8s 网络插件。


✅ 一、准备工作

1. 安装 Lima 和 nerdctl

brew install lima nerdctl

✅ 二、启动 Lima 虚拟机(基于 Ubuntu)

1. 启动默认 Lima 实例

limactl start default

切换root账户

sudo -i

2. 进入 Lima 虚拟机

limactl shell default

3. 安装 containerd 和 nerdctl(在 Lima VM 中)

sudo apt update
sudo apt install -y containerd
sudo systemctl enable --now containerd

✅ 三、下载并打包 Calico 镜像

1. 创建脚本并进入工作目录

mkdir -p ~/calico && cd ~/calico
nano pull_calico_images_nerdctl.sh

2. 粘贴以下脚本内容

#!/bin/bash
set -euo pipefail

images=(
  "quay.io/tigera/operator:v1.32.3"
  "quay.io/calico/cni:v3.27.0"
  "quay.io/calico/kube-controllers:v3.27.0"
  "quay.io/calico/node:v3.27.0"
  "quay.io/calico/pod2daemon-flexvol:v3.27.0"
  "quay.io/calico/typha:v3.27.0"
)

output_dir="/calico/calico-images"
sudo mkdir -p "$output_dir"

for img in "${images[@]}"; do
  filename="${img//[\/:]/_}.tar"

  echo "🔄 Pulling $img"
  sudo nerdctl pull "$img"

  echo "💾 Saving to $output_dir/$filename"
  sudo nerdctl save -o "$output_dir/$filename" "$img"
done

echo "🎉 Done. Images saved to $output_dir"

3. 运行脚本

chmod +x pull_calico_images_nerdctl.sh
sudo ./pull_calico_images_nerdctl.sh

✅ 四、打包镜像文件以便复制到 Mac 主机

1. 打包为压缩文件

sudo tar -czf /tmp/calico-images.tar.gz -C /calico calico-images

✅ 五、从 Lima 虚拟机复制到主机

1. 在 macOS 主机执行复制命令

limactl copy default:/tmp/calico-images.tar.gz ./calico-images.tar.gz

2. 解压到本地目录

mkdir -p ./calico-images
tar -xzf ./calico-images.tar.gz -C ./calico-images --strip-components=1

✅ 六、验证结果

ls ./calico-images

你将看到多个 .tar 文件:

quay.io_calico_node_v3.27.0.tar
quay.io_calico_cni_v3.27.0.tar
...

✅ 七、可选:导入到离线环境

.tar 文件复制到你的离线 K8s 节点并执行:

sudo nerdctl load -i quay.io_calico_node_v3.27.0.tar

相关文章:

  • UML-饮料自助销售系统(饮料已售完)序列图
  • 每日一题-力扣-2999. 统计强大整数的数目 0410
  • 预言机与数据聚合器:DeFi的数据桥梁与风险博弈
  • 云原生运维在 2025 年的发展蓝图
  • PyTorch实现多输入输出通道的卷积操作
  • 非 root 用户运行 Docker 容器和同步主机和容器权限
  • vue入门:插槽
  • AI 重构 Java 遗留系统:从静态方法到 Spring Bean 注入的自动化升级
  • ocr python库
  • 《深度剖析分布式软总线:软时钟与时间同步机制探秘》
  • git清理已经删除的远程分支
  • 大模型在儿童急性淋巴细胞白血病(ALL)-初治患者诊疗中应用的研究报告
  • git commit时自动生成Change-ID
  • XTuner学习
  • WHAT - Typescript 定义元素类型
  • 大数据(7.2)Kafka万亿级数据洪流下的架构优化实战:从参数调优到集群治理
  • 数据结构与算法之ACM Fellow-算法3.4 散列表
  • Unity 设置弹窗Tips位置
  • LLaMA-Factory从安装到微调全流程
  • Linux上搭建NFS共享存储
  • 怎样自己做商场网站/大数据精准获客软件
  • 三好街做网站的/php开源建站系统
  • wordpress光荣帮插件/seo是指什么意思
  • 好资源源码网站/百度会员登录入口
  • 汽车o2o网站建设/推广网络营销案例
  • 专业微网站建设公司首选公司哪家好/seo网站优化培训多少价格