docker-runc未安装在系统上

时间:2017-03-13 00:10:49

标签: docker centos7 yum

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

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

SOLUTION:

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

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

5 个答案:

答案 0 :(得分:19)

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

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

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

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

答案 1 :(得分:15)

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

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

答案 2 :(得分: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

希望这有助于其他人!

答案 3 :(得分: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"
}

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

答案 4 :(得分:0)

请尝试

失败的补片错误:系统上未安装docker-runc

$('input[name="class_fee"]').append('<option value="'+ key +'">'+ value +'</option>');