containerd 是一个行业标准的容器运行时,专注于简单、健壮的容器执行。它是从 Docker 中分离出来的项目,旨在作为一个底层的运行时接口,供更高层次的容器管理层使用。
containerd 负责镜像传输、存储、容器执行、网络配置等工作。它向上为 Docker 等高级容器管理层提供 API 接口,向下则直接调用操作系统内核特性或通过 runC 来运行容器。

containerd.sock 是由 containerd 自动创建的,前提是 containerd 已经被正确安装、配置并启动。

     Docker 使用 containerd 作为其容器运行时的一部分。当你通过 Docker CLI 或 API 发出命令时,这些命令会首先到达 Docker 守护进程(docker daemon),然后 Docker 守护进程可能会通过 gRPC 接口将具体的容器运行任务委派给 containerd 来执行。 

1.离线部署docker

详见离线安装 docker 和 docker-compose

2.配置文件

sudo mkdir -p /etc/containerd/

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

3.系统服务

下载:

https://raw.githubusercontent.com/containerd/containerd/main/containerd.service

cp containerd.service  /etc/systemd/system/

chmod +x /etc/systemd/system/containerd.service

# Copyright The containerd Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.[Unit]
Description=containerd container runtime
Documentation=https://containerd.io
After=network.target local-fs.target dbus.service[Service]
#uncomment to enable the experimental sbservice (sandboxed) version of containerd/cri integration
#Environment="ENABLE_CRI_SANDBOXES=sandboxed"
ExecStartPre=-/sbin/modprobe overlay
ExecStart=/usr/bin/containerdType=notify
Delegate=yes
KillMode=process
Restart=always
RestartSec=5
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNPROC=infinity
LimitCORE=infinity
LimitNOFILE=infinity
# Comment TasksMax if your systemd version does not supports it.
# Only systemd 226 and above support this version.
TasksMax=infinity
OOMScoreAdjust=-999[Install]
WantedBy=multi-user.target

Description:
提供了对该服务单元的简短描述。
在这个例子中,描述为 "containerd container runtime",表示这是一个用于容器运行的 containerd 服务。
Documentation:
提供了指向官方文档的链接,帮助用户了解更多信息。
在这个例子中,链接指向 https://containerd.io。
After:
指定了在启动此服务之前需要启动的其他服务或目标(target)。
在这个例子中,containerd 将在网络 (network.target)、本地文件系统 (local-fs.target) 和 D-Bus (dbus.service) 启动之后再启动。
ExecStartPre:
在启动主进程之前执行的命令。
-/sbin/modprobe overlay 表示尝试加载内核模块 overlay,前面的 - 表示即使该命令失败也不会阻止服务启动。
ExecStart:
指定要启动的主进程命令。
/usr/bin/containerd 是 containerd 守护进程的可执行文件路径。
Type:
定义了服务的启动类型。
notify 表示 containerd 将通过 sd_notify(3) 协议通知 systemd 其启动状态。
Delegate:
允许 containerd 管理自己的 cgroup 层次结构。
yes 表示启用这种行为。
KillMode:
定义了当停止服务时应终止哪些进程。
process 表示仅终止主进程。
Restart:
定义了服务失败时是否以及如何重启。
always 表示无论退出代码是什么,都会重启服务。
RestartSec:
定义了在服务失败后等待多久进行重启。
5 表示等待 5 秒后再重启。
LimitNPROC, LimitCORE, LimitNOFILE:
设置了对进程数、核心转储大小和打开文件描述符数量的限制。
infinity 表示没有限制。
TasksMax:
设置了服务可以创建的最大任务数。
infinity 表示没有限制,但需注意只有 systemd 226 及以上版本支持此设置。
OOMScoreAdjust:
调整服务的 OOM(Out of Memory)分数。
-999 表示尽量避免在内存不足时杀死该服务。
WantedBy:
指定了在哪些目标(target)下该服务单元会被自动启动。
在这个例子中,multi-user.target 是一个常见的 systemd target,代表多用户模式(即非图形界面的完整系统启动状态)。这意味着当你运行 systemctl enable containerd.service 时,containerd 服务将在系统进入多用户模式时自动启动。

4.启动服务

sudo systemctl daemon-reload

sudo systemctl start containerd

​​​​​​​5.设置开机启动

sudo systemctl enable containerd

​​​​​​​6.服务状态

sudo systemctl status containerd

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/86117.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/86117.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/86117.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

web布局15

CSS 网格布局除了提供定义网格和放置网格项目的相关属性之外,也提供了一些控制对齐方式的属性。这些控制对齐方式的属性,和 Flexbox 布局中的对齐属性 justify-* 、align-* 、*-items 、*-content 、 *-self 等是相似的: 在网格布局中可以用它…

leetcode 291. Word Pattern II和290. Word Pattern

目录 291. Word Pattern II 290. Word Pattern 291. Word Pattern II 回溯法哈希表 class Solution {unordered_map<char,string> hashmap;unordered_set<string> wordset; public:bool wordPatternMatch(string pattern, string s) {return backtrack(pattern,…

大模型的开发应用(十三):基于RAG的法律助手项目(上):总体流程简易实现

RAG法律助手项目&#xff08;上&#xff09;&#xff1a;总体流程简易实现 1 项目介绍1.1 方案选型1.2 知识文档 2 文档解析3 知识库构建3.1 构建知识节点3.2 嵌入向量初始化3.2 向量存储 4 查询4.1 初始化大模型4.2 模型响应4.2 本文程序存在的问题 完整代码 1 项目介绍 本项…

覆盖迁移工具选型、增量同步策略与数据一致性校验

1 引言 在当今数据驱动的时代&#xff0c;数据迁移已成为系统迭代、数据库升级、云迁移和架构演进中的关键环节。根据Gartner的调研&#xff0c;超过70%的企业级数据迁移项目因工具选择不当或同步策略缺陷而延期或失败。数据迁移不仅仅是简单的数据搬运&#xff0c;而是涉及数…

`docker run -it --rm` 笔记250624

docker run -it --rm 笔记250624 docker run -it --rm 是一个强大且常用的 Docker 命令组合&#xff0c;特别适合交互式开发和调试场景。以下是详细解析和使用指南&#xff1a; 参数解析 参数作用典型场景-i保持 STDIN 打开&#xff08;交互模式&#xff09;需要输入命令的交…

解锁阿里云AnalyticDB:数据仓库的革新利器

AnalyticDB&#xff1a;云数据仓库新势力 在数字化浪潮中&#xff0c;数据已成为企业的核心资产&#xff0c;而云数据仓库作为数据管理与分析的关键基础设施&#xff0c;正扮演着愈发重要的角色。阿里云 AnalyticDB 作为云数据仓库领域的佼佼者&#xff0c;以其卓越的性能、创…

【PX30 Qt 5.15 交叉编译环境搭建完整指南】

PX30 Qt 5.15 交叉编译环境搭建完整指南 (Ubuntu 20.04 → PX30 aarch64) &#x1f3af; 项目概览 本指南详细记录了在Ubuntu 20.04上搭建针对Rockchip PX30的Qt 5.15.2交叉编译环境的完整过程&#xff0c;包括实际操作步骤、遇到的问题及解决方案。 目标平台: Rockchip PX3…

深入理解读写锁 ReadWriteLock

在高性能并发编程中&#xff0c;如何有效地管理共享资源的访问是核心挑战之一。传统的排他锁&#xff08;如ReentrantLock&#xff09;在读多写少的场景下&#xff0c;性能瓶颈尤为突出&#xff0c;因为它不允许并发读取。Java并发包&#xff08;java.util.concurrent.locks&am…

Unity Addressable使用之检测更新流程

补充知识 关键文件说明 Addressable打包后会生成多种文件&#xff0c;主要包括 .hash、.json 和 .bundle 文件&#xff0c;它们各自有不同的作用。 .hash 文件&#xff08;哈希文件&#xff09; 作用&#xff1a; 用于 版本对比&#xff0c;检查资源是否有更新。存储的是 资…

Elasticsearch 中实现推荐搜索(方案设想)

1. 存储商品数据的数据类型 为了支持推荐搜索&#xff0c;商品数据通常需要包含以下字段&#xff1a; 商品索引结构 PUT /products {"mappings": {"properties": {"product_id": {"type": "keyword" // 商品 ID},"…

Aerotech系列(4)Aerotech.A3200名空间

IconTypeDescriptionAxisMask Represents a selection of axes Controller Represents a controller Allows configuring and c

React Router 是怎么实现灵活导航的?

&#x1f399; 欢迎来到《前端达人 React播客书单》第 21 期。 视频版&#xff08;播客风格更精彩&#xff09; 今天我们不讲 Hook&#xff0c;来拆解前端开发中另一个高频组件&#xff1a;React Router 的进阶导航模式。 你可能用过 <Link> 或 <Route>&#xff0…

Modbus TCP转Profibus DP网关与JF - 600MT 称重变送器轻松实现数据互换

Modbus TCP转Profibus DP网关与JF - 600MT 称重变送器轻松实现数据互换 在工业自动化领域&#xff0c;不同设备之间的通信与数据交互至关重要。Modbus TCP转Profibus DP网关作为连接不同协议设备的关键桥梁&#xff0c;发挥着不可或缺的作用。本文将以JF - 600MT称重变送器与3…

聊聊 SQL 注入那些事儿

相信大家对于学校们糟糕的网络环境和运维手段都早有体会&#xff0c;在此就不多做吐槽了。今天我们来聊一聊SQL注入相关的内容。 何谓SQL注入&#xff1f; SQL注入是一种非常常见的数据库攻击手段&#xff0c;SQL注入漏洞也是网络世界中最普遍的漏洞之一。大家也许都听过某某学…

多传感器融合

目录 多传感器融合 多传感器融合的方向 传感器融合方案介绍 LOAM LIO-SAM LVI-SAM 多线激光雷达性质 什么是运动畸变 两步优化的帧间里程记 IMU 器件介绍及选型建议 IMU 标定方法简介 视觉里程计 VS 激光里程计 LVI-SAM 激光视觉融合思路简介 多传感器融合工程实践经验与技巧 多…

Auto-GPT vs ReAct:两种智能体思路对决

目录 Auto-GPT vs ReAct&#xff1a;两种智能体思路对决 &#x1f9e0; 一、智能体的演化背景 &#x1f9e9; 二、Auto-GPT&#xff1a;自循环的执行体 &#x1f50d; 三、ReAct&#xff1a;推理 行动的交错协同 ⚔️ 四、对比总结 &#x1f6e0; 五、你该选谁&#xff…

本地部署大模型性能测试,DeepSeek-R1-0528-Qwen-8B 依然是我的不二之选

大家好&#xff0c;我是 ai 学习的老章 介绍一个大模型并发性能测试工具 看一下我高频使用的&#xff0c;在2*4090显卡上部署的 DeepSeek-R1-0528-Qwen-8B 性能如何 _我_特别喜欢的三个DeepSeek版本 DeepSeek-R1-0528 蒸馏 Qwen3:8B 大模型&#xff0c;双 4090 本地部署&am…

华为云Flexus+DeepSeek征文|华为云 Dify 高可用部署教程:CCE 容器集群一键构建企业级智能应用

前言 在数字化转型加速的企业级应用场景中&#xff0c;构建高可用智能平台已成为业务创新的核心驱动力。本文深度解析基于华为云CCE容器服务的Dify智能应用部署实践&#xff0c;揭示如何通过云原生架构与AI技术的深度融合&#xff0c;实现企业知识管理、智能客服等场景的敏捷落…

Linux 多进程间通信(IPC)详解

在 Linux 系统中,多进程通信(Inter-Process Communication, IPC) 是实现多个进程之间数据交换和同步的重要机制。由于每个进程拥有独立的地址空间,因此需要借助特定的系统机制来实现信息共享。 📌 Linux 下常见的 6 种进程间通信方式 管道(Pipe)命名管道(FIFO)消息队…

服务器数据恢复——异常断电导致服务器故障的数据恢复案例

服务器数据恢复环境&#xff1a; 某服务器上有一组由12块硬盘组建的raid5磁盘阵列。 机房供电不稳定导致机房中该服务器非正常断电&#xff0c;重启服务器后管理员发现服务器无法正常使用。 意外断电可能会导致服务器上的raid模块损坏。 服务器数据恢复过程&#xff1a; 1、将故…