Linux 安装部署及使用Containerd容器管理工具 ~ 保姆级

目录

实验环境:

(1)一台centos7.6

(2)关闭防火墙和selinux

(3)可以连接外网

(4)配置公网仓库

1.部署containerd服务

(1)安装yum-util

[(2)添加阿里云 docker仓库](#(2)添加阿里云 docker仓库)

#查看是否添加成功

(3)安装Containerd

(4)启动并设置开机自启

(5)查看版本:

其实到这里containerd安装就已经结束了,一下内容是对containerd容器管理工具优化

2.更改Containerd默认配置文件

(1)初始化配置文件

(2)配置镜像加速器地址

#创建加速器文件存放目录

#添加加速器文件

3.安装容器管理命令nerdctl

(1)下载nerdctl命令压缩包

(2)直接解压使用

[4.安装bridge CNI 网络插件](#4.安装bridge CNI 网络插件)

下载CNI插件:

5.尝试拉取镜像运行容器

(1)拉取Nginx镜像

#查看镜像详细信息

(2)直接创建并运行nginx容器

命令注释:

#查看容器状态

(3)进入容器

(4)简单在容器里写一个页面

6.打开浏览器访问nginx网站


想详细了解容器的可以看我上一章文档

Docker容器快速入门(1)-CSDN博客文章浏览阅读812次,点赞23次,收藏18次。你也可以把它理解为一个轻量的虚拟机,它只虚拟你软件需要的运行环境,多余的一点都不要,而普通虚拟机则是一个完整而庞大的系统,包含各种不管你要不要的软件。拿着"安装包"就可以一个命令运行起来你的应用,自动模拟出一摸一样的运行环境,不管是在 Windows/Mac/Linux。可以很方便地在不同的地方移动和运行,不管是在你的电脑上,还是在服务器上,甚至在其他的机器上。有了 Docker,开发者就不用再担心不同的环境会导致应用出问题,因为。软件安装后的状态,每个软件运行环境都是独立的、隔离的,称之为容器。https://blog.csdn.net/weixin_72819498/article/details/139296234

实验环境:

(1)一台centos7.6
(2)关闭防火墙和selinux
(3)可以连接外网
(4)配置公网仓库

1.部署containerd服务

(1)安装yum-util

安装需要的软件包, yum-util 提供yum-config-manager功能

复制代码
yum -y install yum-utils

(2)添加阿里云 docker 仓库

Containerd软件包及依赖存放于Docker仓库

复制代码
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#查看是否添加成功
复制代码
ls /etc/yum.repos.d/docker-ce.repo

sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo

(3)安装Containerd

复制代码
yum -y install containerd.io

(4)启动并设置开机自启

复制代码
systemctl enable containerd --now

(5)查看版本:

复制代码
containerd -v
其实到这里containerd安装就已经结束了,一下内容是对containerd容器管理工具优化

2.更改Containerd默认配置文件

(1)初始化配置文件

默认的配置文件是不能在K8s中使用的,配置文件基本也没有什么有效内容

复制代码
containerd config default > /etc/containerd/config.toml

(2)配置镜像加速器地址

#创建加速器文件存放目录
复制代码
mkdir -p /etc/containerd/certs.d/docker.io/
#添加加速器文件
复制代码
cat <<END>> /etc/containerd/certs.d/docker.io/hosts.toml
[host."https://docker.itelyou.cf"]
  capabilities = ["pull","resolve"]
END

3.安装容器管理命令nerdctl

Containerd自带的ctr和crictl都功能有限,可以安装nerdctl完全替代这些命令而且就是nerdctl管理命令与Docker命令格式语法几乎一样

(1)下载nerdctl命令压缩包

nerdctl下载链接https://github.com/containerd/nerdctl/releases/download/v1.7.7/nerdctl-1.7.7-linux-amd64.tar.gz

(2)直接解压使用

下载好命令的压缩包以后可以直接解压使用此命令

复制代码
tar zxvf nerdctl-1.7.7-linux-amd64.tar.gz -C /usr/local/bin/

4.安装 bridge CNI 网络 插件

containerd 依赖 CNI(Container Network Interface)插件来管理容器网络。没有此插件无法对容器进行端口映射从而导致容器无法与外界通信

下载CNI插件:

AMD版

https://github.com/containernetworking/plugins/releases/download/v1.5.1/cni-plugins-linux-amd64-v1.5.1.tgz

ARM版

https://github.com/containernetworking/plugins/releases/download/v1.5.1/cni-plugins-linux-arm64-v1.5.1.tgz

复制代码
mkdir -p /opt/cni/bin
tar zxvf cni-plugins-linux-amd64-v1.5.1.tgz -C /opt/cni/bin/

5.尝试拉取镜像运行容器

(1)拉取Nginx镜像

复制代码
nerdctl pull nginx:1.27.0
#查看镜像详细信息
复制代码
nerdctl images

(2)直接创建并运行nginx容器

复制代码
nerdctl run -d --name=nginx -p 80:80 nginx:1.27.0
命令注释:

docker run -d -p 80:80 --name 自定义容器名称 镜像标识|镜像名称:tag

-d 代表后台运行

-p 宿主机端口:容器端口 ,实现一个端口映射

--name 容器名称: 指定容器的名称

#查看容器状态
复制代码
nerdctl ps

(3)进入容器

复制代码
nerdctl exec -it nginx bash

(4)简单在容器里写一个页面

复制代码
echo '<font color=red><h1>hello containerd ! ! !</h1>' > /usr/share/nginx/html/index.html

6.打开浏览器访问nginx网站

http://192.168.100.102/

相关推荐
是个西兰花几秒前
linux:命名管道与共享内存
linux·运维·服务器·网络·c++
Snasph5 分钟前
Linux 日志流水线深度解析:syslog() → journald → rsyslog → /var/log/syslog
linux·syslog·rsyslog
凡人叶枫11 分钟前
Effective C++ 条款08:别让异常逃离析构函数
java·linux·数据库·c++·嵌入式开发
新时代牛马16 分钟前
内核调试方法
linux·学习
MXsoft61817 分钟前
**智慧校园运维实践:多校区、老旧设备的统一监控方案**
运维·自动化
Sean‘24 分钟前
在隔离内网机器上使用 Filebeat 全量采集日志并推送到 ELK 的实战
运维·服务器·elk
Promise微笑31 分钟前
精准微阻测量:微欧计的分类、场景应用与高效选型决策指南
大数据·运维·网络·人工智能
MageGojo38 分钟前
R-Shell开源项目实战解析:用Rust打造命令行SSH工具,支持连接管理、远程执行、SFTP与MCP
运维·rust·开源项目·命令行工具·ssh客户端·mcp
云飞云共享云桌面40 分钟前
非标设计工厂8-10个SolidWorks研发共享一台高性能工作站
运维·服务器·自动化·电脑·制造
墨痕诉清风1 小时前
Linux系统设置上海时间(24小时制)
linux·运维·服务器