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/

相关推荐
Cloud_Air75414 分钟前
从零开始使用SSH链接目标主机(包括Github添加SSH验证,主机连接远程机SSH验证)
运维·ssh
Hello.Reader1 小时前
基于 Nginx 的 WebSocket 反向代理实践
运维·websocket·nginx
北冥有鱼被烹1 小时前
【微知】/proc中如何查看Linux内核是否允许加载内核模块?(/proc/sys/kernel/modules_disabled)
linux·服务器
qq_273900232 小时前
CentOS系统防火墙服务介绍
linux·运维·centos
竹木一5402 小时前
Docker拉取镜像代理配置实践与经验分享
经验分享·docker·容器
小余吃大鱼2 小时前
CentOS中在线安装Docker(超详细)
linux·docker·centos
程序员JerrySUN2 小时前
驱动开发硬核特训 · Day 19:字符设备驱动实战(控制 LED)
linux·驱动开发
小灰灰__2 小时前
Linux安装ffmpeg7.1操作说明
linux·运维·服务器
互联网搬砖老肖2 小时前
运维打铁:Centos 7 安装 redis_exporter 1.3.5
运维·redis·centos
Zz_waiting.2 小时前
网络原理 - 9
linux·服务器·网络·网络协议·tcp/ip