问题标签 [containerd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1356 浏览

docker - 如何与 Conatinerd 运行时共享我的 docker 图像?

我曾经使用 docker 镜像,现在我正在尝试使用 containerd 运行时运行容器。所以,我想与 ctr 共享我预先构建的 docker 图像,这可能吗?请问我该怎么做?

0 投票
1 回答
552 浏览

kubernetes - 如何在 containerd 中添加 Harbor 注册表

有谁知道我们如何将港口注册中心添加到 containerd cri 中。我已将其添加为不安全的注册表,但 kubernetes 无法提取港口图像。 我面临的错误的图像

0 投票
3 回答
2924 浏览

docker - 如果我重新启动一个运行一些 pod 的节点会发生什么

假设有一些来自 Deployments/StatefulSet/DaemonSet 等的 pod 在 Kubernetes 节点上运行。

然后我直接重启了节点,然后启动docker,同样参数启动kubelet。

那些豆荚会发生什么?

  1. 它们是否使用从 kubelet 本地保存的元数据重新创建?或者使用从 api-server 检索到的信息?还是从 OCI 运行时恢复并表现得好像什么都没发生?
  2. 是不是只有无状态的pod(no--local-data)才能正常恢复?如果它们中的任何一个具有本地 PV/目录,它们会正常连接回来吗?
  3. 长时间不重启节点怎么办?api-server 会分配其他节点来创建这些 pod 吗?默认超时值是多少?我该如何配置?

我所知道的:

当 kubelet 从 kube-api-server 收到 PodSpec 时,它像远程服务一样调用 CRI,步骤如下:

  1. 创建 PodSandbox(又名“暂停”图像,始终“停止”)
  2. 创建容器
  3. 运行容器

所以我随着节点和 docker 的重新启动,步骤 1 和 2 已经完成,容器处于“停止”状态;然后当 kubelet 重新启动时,它从 kube-api-server 中提取最新信息,发现容器未处于“运行”状态,因此它调用 CRI 运行容器,然后一切恢复正常。

请帮我确认。

先谢谢啦~

0 投票
1 回答
1111 浏览

raspberry-pi - microk8s containerd - 未能保留沙箱名称

让 microk8s 在两个节点上运行。Ready最近它进入了一个状态,主节点因为microk8s.daemon-containerd服务无法启动而无法进入状态。这在尝试cert-manager在 k8s 集群中运行配置后开始发生。

据我所见,cert-manager-webhookpod 正在第二个节点上运行。

我试过microk8s stop/ microk8s start。我什microk8s reset至在这一点上尝试过,但 containerd 总是显示相同的错误。

输出:

如何使主节点恢复到良好的运行/就绪状态?

- - 更新 - -

输出:

最后一条日志显示沙盒名称是为给定 ID 保留的。

那会是什么身份证?我该去哪里,应该做些什么来释放一些东西?

在硬重启后查看“未能保留沙箱名称”错误中的注释#1014我试过:

但是从输出中可以看出,不存在具有该 id 的容器吗?

0 投票
1 回答
2533 浏览

linux - 仅使用 containerd 修剪容器映像(不带 Docker)

如果我刚刚containerd安装在 Linux 系统上(即安装 Docker),如何删除未使用的容器镜像以节省磁盘空间?

Docker 有那个方便的docker system prune命令,但我找不到任何类似的ctr工具或 3rd 方工具。

0 投票
1 回答
287 浏览

docker - 我可以在 Docker(和 Containerd)图像名称中添加额外的斜杠“/”吗?

我需要将 Docker Hub 中的图像复制到私有注册表中。例如,我需要redislabs/rebloom:2.2.2. 那么,我可以命名它my-private-registry.com/my-organization/redislabs/rebloom:2.2.2吗?(请注意my-organization,我无法修改。)

换句话说,a.com/b/c/d:v1.0好还是不好?

我读了这篇文章,看到 Docker 可以解析它。但是,一些工具会拒绝这个吗?Containerd 会拒绝这个吗?恐怕他们接受它但在某处失败,这可能很难调试。

非常感谢!

0 投票
1 回答
638 浏览

docker - Faasd - 无法从私有注册表中提取图像

我有一个使用 OpenFaaS 的应用程序。

特别是,我使用faasd是因为该功能将在处理能力较差的设备上运行。我有一个私有注册表,其中存在“X”函数的图像。我想从 faasd 中提取此映像以部署和执行它,但我遇到了一个问题:当我尝试执行该操作时,我似乎没有经过身份验证,但我正确传递了 registryAuth 令牌。

这里有一个我正在做的例子(按照这个https://ericstoekl.github.io/faas/operations/managing-images/#deploy-functions-with-private-registries-credentials

邮政

标题:

身体:

我确认参数都正确,我收到此错误:

“无法提取图像 <registry_ip_address>/functions/functionName:: 无法提取:无法解析引用“<registry_ip_address>/functions/functionName:”:没有为令牌身份验证质询指定范围”

注册表运行良好,因为如果我尝试使用 docker 以经典方式下载图像,我可以提取图像。

先感谢您!

0 投票
2 回答
1229 浏览

azure - 在 azure 上创建 ejbca docker 容器时出现容器错误“无法通过 uid 找到用户”

当我尝试为EJBCA-ce创建 Azure 容器实例时,出现错误并且看不到任何日志。

我期望以下结果: 天蓝色门户容器实例事件成功

但我收到以下错误:

天蓝色门户容器实例事件失败

Failed to start container my-azure-container-resource-name, Error response: to create containerd task: failed to create container e9e48a_________ffba97: guest RPC failure: failed to find user by uid: 10001: expected exactly 1 user matched '0': unknown

一些上下文:

我在天蓝色云容器实例上运行容器

我试过了

  • 来自 ARM 模板
  • 来自 Azure 门户。
  • 已安装文件共享
  • 使用数据库环境变量
  • 没有任何环境变量

它使用相同的环境变量(数据库配置)在本地运行良好。几周前它曾经使用相同的配置运行。

以下是我从 az cli 附加容器组时获得的一些日志。

从 dockerhub提取的dockerfile

我怀疑这个问题可能与命令有关USER 0USER 10001我们在 dockerfile 中发现了好几次。

ARM 模板

它在我的本地机器上运行良好(ubuntu 20.04)

0 投票
1 回答
824 浏览

kubernetes - 如何在 https://hub.docker.com/ 中配置 microk8s kubernetes 以使用私有容器?

microk8s 文档“使用私有注册表”让我不确定该怎么做。安全注册表部分说Kubernetes以一种方式做到这一点(没有说明 Kubernetes 的方式是否适用于 microk8),而microk8s在其实现中使用了containerd 。

我的 YAML 文件包含对 dockerhub 上私有容器的引用。

当我microk8s kubectl 应用此文件并执行microk8s kubectl describe时,我得到:

我已经验证我可以从执行 docker pull 命令的控制台下载这个 repo。

使用公共容器的 Pod 在 microk8s 中运行良好。

文件/var/snap/microk8s/current/args/containerd-template.toml已经包含使 dockerhub 工作的东西,因为公共容器工作。在这个文件中,我发现

以上似乎与身份验证无关。

在互联网上,我找到了创建存储凭据的秘密的说明,但这也不起作用。

0 投票
1 回答
821 浏览

docker - 容器突然被杀死并警告“在杀死垫片后清理”

我们最近在我们的部署环境中从 docker 版本 17.06.0-ce 升级到了 18.09.2。经验丰富的容器在运行几天后突然被杀死,而 docker 日志中没有太多信息。

监控内存使用情况,受影响的容器远低于所有限制(每个容器以及主机都有足够的可用内存)。

在问题期间设置观察:

  1. 带有 18.09.2 的 docker 版本,大约有 30 个正在运行的容器。
  2. 经验丰富的容器在运行几天后被杀死。

容器崩溃期间观察到的 Docker 日志

注意:由于此部署是在关键基础设施上进行的,我们希望了解为什么会发生这种情况并确定不会再次发生这种情况。是否有人在任何环境中遇到过同样的问题,如果正在使用的 docker 版本存在已知问题,请告诉我们。