Cube-Studio项目中Containerd容器运行时的安装与配置指南

Cube-Studio项目中Containerd容器运行时的安装与配置指南

cube-studio cube studio开源云原生一站式机器学习/深度学习AI平台,支持sso登录,多租户/多项目组,数据资产对接,notebook在线开发,拖拉拽任务流pipeline编排,多机多卡分布式算法训练,超参搜索,推理服务VGPU,多集群调度,边缘计算,serverless,标注平台,自动化标注,数据集管理,大模型一键微调,llmops,私有知识库,AI应用商店,支持模型一键开发/推理/微调,私有化部署,支持国产cpu/gpu/npu芯片,支持RDMA,支持pytorch/tf/mxnet/deepspeed/paddle/colossalai/horovod/spark/ray/volcano分布式 cube-studio 项目地址: https://gitcode.com/gh_mirrors/cu/cube-studio

前言

在Cube-Studio项目中,Containerd作为容器运行时扮演着重要角色。本文将详细介绍在Ubuntu和CentOS系统上安装配置Containerd的全过程,帮助用户为Cube-Studio项目搭建稳定的容器运行环境。

环境准备

在开始安装前,请确保:

  1. 系统为Ubuntu或CentOS
  2. 拥有root或sudo权限
  3. 网络连接正常

一、卸载旧版本容器运行时

为避免冲突,建议先卸载系统中可能存在的旧版本容器运行时:

sudo apt-get remove -y docker docker-engine docker.io containerd runc
sudo rm -rf /var/lib/docker /etc/docker/
sudo rm -rf /var/lib/containerd /etc/containerd/

二、Ubuntu系统安装Containerd

1. 配置国内镜像源(阿里云)

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

2. 更新软件源并安装

sudo apt-get update
apt-cache madison containerd  # 查看可用版本
sudo apt-get install -y containerd.io  # 安装最新稳定版
# 或指定版本:sudo apt-get install containerd=<VERSION>

3. 启动并设置开机自启

systemctl start containerd
systemctl enable containerd
systemctl status containerd  # 验证状态

三、CentOS系统安装Containerd

yum update -y
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum -y install containerd.io

systemctl start containerd
systemctl enable containerd
systemctl status containerd

四、Containerd核心配置

1. 生成默认配置文件

mkdir /etc/containerd
containerd config default | tee /etc/containerd/config.toml

2. 关键配置项修改

修改sandbox镜像地址
sandbox_image = "registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.8"
CentOS系统需配置cgroup驱动
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
  SystemdCgroup = true
配置镜像加速源
[plugins."io.containerd.grpc.v1.cri".registry]
  config_path = "/etc/containerd/certs.d"

创建镜像加速配置:

mkdir -p /etc/containerd/certs.d/docker.io
tee /etc/containerd/certs.d/docker.io/hosts.toml << 'EOF'
server = "https://docker.io"
[host."https://docker.1panel.live"]
  capabilities = ["pull", "resolve"]
[host."https://hub.rat.dev/"]
  capabilities = ["pull", "resolve"]
[host."https://docker.chenby.cn"]
  capabilities = ["pull", "resolve"]
[host."https://docker.m.daocloud.io"]
  capabilities = ["pull", "resolve"]
EOF
配置私有镜像仓库
mkdir -p /etc/containerd/certs.d/172.17.0.4:88
tee /etc/containerd/certs.d/172.17.0.4:88/hosts.toml << 'EOF'
server = "http://172.17.0.4:88"
[host."http://172.17.0.4:88"]
  capabilities = ["pull", "resolve", "push"]
  skip_verify = true
EOF

3. 重启生效配置

systemctl daemon-reload
systemctl restart containerd

五、安装nerdctl工具

nerdctl是Containerd的CLI工具,安装步骤:

  1. 根据Containerd版本选择兼容的nerdctl版本
  2. 下载并安装:
version=1.7.6
wget https://githubfast.com/containerd/nerdctl/releases/download/v${version}/nerdctl-${version}-linux-amd64.tar.gz
tar zxvf nerdctl-${version}-linux-amd64.tar.gz -C /usr/local/bin
  1. 配置nerdctl:
mkdir -p /etc/nerdctl/
cat > /etc/nerdctl/nerdctl.toml << 'EOF'
namespace      = "k8s.io"
insecure_registry = true
EOF

六、安装构建工具BuildKit

  1. 下载对应版本:
version=v0.15.1
wget https://githubfast.com/moby/buildkit/releases/download/${version}/buildkit-${version}.linux-amd64.tar.gz
tar zxvf buildkit-${version}.linux-amd64.tar.gz -C /usr/local/
  1. 创建systemd服务:
[Unit]
Description=BuildKit
[Service]
ExecStart=/usr/local/bin/buildkitd --oci-worker=false --containerd-worker=true
[Install]
WantedBy=multi-user.target
  1. 启动服务:
systemctl enable buildkit --now

七、安装CNI网络插件

  1. 下载并安装CNI插件:
mkdir -p /opt/cni/bin
wget https://githubfast.com/containernetworking/plugins/releases/download/v1.1.1/cni-plugins-linux-amd64-v1.1.1.tgz
sudo tar -C /opt/cni/bin -xzvf cni-plugins-linux-amd64-v1.1.1.tgz
  1. 创建网络配置文件:
{
    "cniVersion": "1.0.0",
    "name": "bridge",
    "type": "bridge",
    "bridge": "cni0",
    "isGateway": true,
    "ipMasq": true,
    "ipam": {
        "type": "host-local",
        "ranges": [
            [{"subnet": "10.22.0.0/16"}]
        ],
        "routes": [
            {"dst": "0.0.0.0/0"}
        ]
    }
}
  1. 更新Containerd配置:
[plugins."io.containerd.grpc.v1.cri".cni]
  conf_dir = "/etc/cni/net.d"
  bin_dir = "/opt/cni/bin"
  1. 重启服务:
systemctl daemon-reload
systemctl restart containerd

常见问题解决

  1. 镜像拉取失败:可尝试在镜像名前加上docker.anyhub.us.kg/library/前缀
  2. 网络问题:确保CNI配置正确且网络插件已安装
  3. 版本兼容性:注意Containerd、nerdctl和BuildKit的版本匹配

通过以上步骤,您已成功为Cube-Studio项目配置了完整的Containerd容器运行时环境,包括必要的工具和网络组件。这将为后续的Cube-Studio部署和使用提供坚实的基础。

cube-studio cube studio开源云原生一站式机器学习/深度学习AI平台,支持sso登录,多租户/多项目组,数据资产对接,notebook在线开发,拖拉拽任务流pipeline编排,多机多卡分布式算法训练,超参搜索,推理服务VGPU,多集群调度,边缘计算,serverless,标注平台,自动化标注,数据集管理,大模型一键微调,llmops,私有知识库,AI应用商店,支持模型一键开发/推理/微调,私有化部署,支持国产cpu/gpu/npu芯片,支持RDMA,支持pytorch/tf/mxnet/deepspeed/paddle/colossalai/horovod/spark/ray/volcano分布式 cube-studio 项目地址: https://gitcode.com/gh_mirrors/cu/cube-studio

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邱寒望Half-Dane

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值