docker-runc未安装在系统上

问题描述 投票:12回答:5

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

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

docker centos7 yum
5个回答
22
投票

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

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

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

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

17
投票

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

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

3
投票

我知道这是一个相当古老的问题;然而,当我从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

希望这有助于其他人!


0
投票

我尝试了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"
}

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


0
投票

请试试这个

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

cd /usr/libexec/docker/
cp docker-runc-current /usr/bin/docker-runc
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.