containerd安装介绍
配置阿里云镜像加速
apt-get update && apt-get install -y apt-transport-https
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - #执行此步骤报错可能需要执行 sudo apt-get install -y gnupg
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
apt-get update
验证仓库版版本
apt-cache madison containerd
apt方式安装containerd,版本比较久不推荐
apt install containerd
推荐二进制方式
cd /usr/local/src/
https://github.com/containerd/containerd/releases/download/v1.6.6/containerd-1.6.6-linux-amd64.tar.gz #下载地址
tar xvf containerd-1.6.6-linux-amd64.tar.gz
cp bin/* /usr/local/bin/
vim /lib/systemd/system/containerd.service
#查看service文件,修改执行路径ExecStart为/usr/local/bin
[Unit]
Description=containerd container runtime
Documentation=https://containerd.io
After=network.target local-fs.target
[Service]
ExecStartPre=-/sbin/modprobe overlay
ExecStart=/usr/local/bin/containerd
Type=notify
Delegate=yes
KillMode=process
Restart=always
RestartSec=5
LimitNPROC=infinity
LimitCORE=infinity
LimitNOFILE=infinity
TasksMax=infinity
OOMScoreAdjust=-999
[Install]
WantedBy=multi-user.target
默认输出配置文件
mkdir /etc/containerd/
containerd config default > /etc/containerd/config.toml
配置镜像加速
vim /etc/containerd/config.toml
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
endpoint = ["https://lzpmltr2.mirror.aliyuncs.com"]
启动设置开机自启动
systemctl restart containerd && systemctl enable containerd
安装runc
https://github.com/opencontainers/runc/release/download/v1.1.3/runc.amd64
cp runc.amd64 /usr/bin/runc
chmod a+x /usr/bin/runc
推荐的命令行工具nerdctl
安装nerdctl推荐使用,需要安装cni
wget https://github.com/containerd/nerdctl/releases/download/v0.22.0/nerdctl-0.22.0-linux-amd64.tar.gz #下载地址
tar xvf nerdctl-0.22.0-linux-amd64.tar.gz
cp nerdctl /usr/bin/
nerdctl version #验证是否安装成功
安装cni
https://github.com/containernetworking/plugins/releases/download/v1.1.1/cni-plugins-linux-amd64-v1.1.1.tgz #下载地址
mkdir /opt/cni/bin -p #保存cni插件的路径
tar xvf cni-plugins-linux-amd64-v1.1.1.tgz -C /opt/cni/bin/
nerdctl命令使用介绍
使用方式介绍,与docker相差无几
nerdctl pull nginx
创建容器并指定端口
nerdctl run -d -p 80:80 --name=nginx-web1 --restart-always nginx
nerdctl ps
nerdctl exec -it alskkfkfkf bash