繁体   English   中英

"docker-runc 未安装在系统上"

[英]docker-runc not installed on system

我最近更新了基于 Centos 7 的机器。 从那以后,我无法启动任何码头工人。 有人对这个问题有一些经验吗?如果有,你是如何解决的? 感谢您的宝贵帮助。 错误日志下方

docker run -it centos6_labs_ompi161_devtools3 \/usr\/bin\/docker-current:来自守护进程的错误响应:shim 错误:docker-runc 未安装在系统上。

似乎docker rpm最终错过了一些符号链接。 正如我所指出的那样,这个问题提出来了:

https://access.redhat.com/solutions/2876431

这可以通过以下方式轻松解决:

cd /usr/libexec/docker/
sudo ln -s docker-runc-current docker-runc 

参考最佳答案,在/ usr / bin中引入sym链接以在全局路径中启用它

sudo ln -s /usr/libexec/docker/docker-runc-current /usr/bin/docker-runc

我知道这是一个相当古老的问题; 然而,当我从CentOS - Extras docker更新到Docker自己的docker-ce rpm时发生了这种情况。 位于/usr/lib/systemd/system/docker.service的服务文件将以下行硬编码到ExecStart行中:

--add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
--default-runtime=docker-runc \
--exec-opt native.cgroupdriver=systemd \
--userland-proxy-path=/usr/libexec/docker/docker-proxy-current \

默认情况下,docker-ce软件包没有相同的行集,文件路径也不同。 升级后,我添加了以下内容,容器遵循我的启动命令,没有按预期丢失数据:

 --add-runtime docker-runc=/usr/bin/docker-runc \
    --default-runtime=docker-runc \
    --exec-opt native.cgroupdriver=systemd \
    --userland-proxy-path=/usr/bin/docker-proxy

希望这有助于其他人!

我尝试了Nabil Ghodbane的方法,但它没有用。 感谢billabongrob的回答,我找到了解决这个问题的方法。 您可以尝试这个Docker配置文件:

$ cat /etc/docker/daemon.json
{
    "log-level":"warn",
    "hosts": ["unix:///var/run/docker.sock","tcp://0.0.0.0:2375"],
    "runtimes": {
        "docker-runc": {
            "path": "/usr/libexec/docker/docker-runc-current"
        }
    },
    "add-runtime": "docker-runc=/usr/libexec/docker/docker-runc-current",
    "default-runtime": "docker-runc"
}

或者在命令行中使用此配置。

请试试这个

失败垫片错误:未在系统上安装docker-runc

cd /usr/libexec/docker/
cp docker-runc-current /usr/bin/docker-runc

与 CentOS 无关,但对于 Slackware,我必须安装一个单独的runc包。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM