在本教程中,我们将向您展示如何在 Ubuntu 22.04 LTS 上安装 CRI-O。 对于那些不知道的人,CRI-O 是一个开源容器引擎,是 Docker 引擎的替代品。 它是一个轻量级的容器运行时环境。 容器运行时是负责运行容器的软件。
本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo
‘ 到命令以获取 root 权限。 我将向您展示在 Ubuntu 22.04 (Jammy Jellyfish) 上逐步安装 CRI-O。 对于 Ubuntu 22.04 和任何其他基于 Debian 的发行版,如 Linux Mint、Elementary OS、Pop!_OS 等,您可以按照相同的说明进行操作。
先决条件
- 运行以下操作系统之一的服务器:Ubuntu 22.04、20.04 和任何其他基于 Debian 的发行版,如 Linux Mint。
- 建议您使用全新的操作系统安装来防止任何潜在问题。
- 对服务器的 SSH 访问(或者如果您在桌面上,则只需打开终端)。
- 一个
non-root sudo user
或访问root user
. 我们建议充当non-root sudo user
,但是,如果您在充当 root 时不小心,可能会损害您的系统。
在 Ubuntu 22.04 LTS Jammy Jellyfish 上安装 CRI-O
步骤 1. 首先,通过运行以下命令确保所有系统包都是最新的 apt
终端中的命令。
sudo apt update sudo apt upgrade sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
步骤 2. 在 Ubuntu 22.04 上安装 CRI-O。
默认情况下,CRI-O 在 Ubuntu 22.04 基础存储库中不可用。 现在运行以下命令以添加 CRI-O 存储库配置包:
echo "deb [signed-by=/usr/share/keyrings/libcontainers-archive-keyring.gpg] https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS_VERSION/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list echo "deb [signed-by=/usr/share/keyrings/libcontainers-crio-archive-keyring.gpg] https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$CRIO_VERSION/$OS_VERSION/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable:cri-o:$CRIO_VERSION.list
接下来,导入 GPG 密钥:
curl -fsSL https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/$OS_VERSION/Release.key | sudo gpg --dearmor -o /usr/share/keyrings/libcontainers-archive-keyring.gpg curl -fsSL https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/$CRIO_VERSION/$OS_VERSION/Release.key | sudo gpg --dearmor -o /usr/share/keyrings/libcontainers-crio-archive-keyring.gpg
启用存储库后,现在使用以下命令安装最新版本的 CRI-O 包:
sudo apt update sudo apt install cri-o cri-o-runc
成功安装后,启用 CRI-O(系统启动时自动启动),启动并使用以下命令验证状态:
sudo systemctl enable crio sudo systemctl start crio sudo systemctl status crio
步骤 3. 为 CRI-O 安装 CNI(容器网络接口)插件。
运行以下命令安装 CNI 插件:
sudo apt install containernetworking-plugins
步骤 4. 在 Ubuntu 22.04 上使用 CRI-O。
首先,我们安装 CRI Tools 来管理 pod 和容器:
sudo apt install cri-tools
检查是否存在 crictl
命令:
$ sudo crictl info { "status": { "conditions": [ { "type": "RuntimeReady", "status": true, "reason": "", "message": "" }, { "type": "NetworkReady", "status": false, "reason": "NetworkPluginNotReady", "message": "Network plugin returns error: Missing CNI default network" } ] } }
接下来,从 Docker Hub 拉取一个测试 Nginx 镜像:
sudo crictl pull nginx
检查可用图像:
sudo crictl images
恭喜! 您已成功安装 CRI-O。 感谢您使用本教程在 Ubuntu 22.04 LTS Jammy Jellyfish 系统上安装 CRI-O。 如需更多帮助或有用信息,我们建议您查看 CRI-O 官方网站.