代码之家  ›  专栏  ›  技术社区  ›  SaltedPork

在为Docker的新安装运行“hello world”测试容器时,我得到一个OCI运行时错误

  •  1
  • SaltedPork  · 技术社区  · 8 年前

    我已经使用yum进程在Centos 7上安装了Docker。以下是的输出 systemctl status docker.service -l :

           ● docker.service - Docker Application Container Engine
       Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
       Active: active (running) since Tue 2018-01-02 14:11:09 GMT; 1h 15min ago
         Docs: https://docs.docker.com
     Main PID: 136537 (dockerd)
       Memory: 71.3M
       CGroup: /system.slice/docker.service
               ├─136537 /usr/bin/dockerd
               └─136556 docker-containerd --config /var/run/docker/containerd/containerd.toml
    
    Jan 02 15:00:33 colossus dockerd[136537]: time="2018-01-02T15:00:33.157175048Z" level=error msg="c60a6261b7381f5739fa11e6df8b4219d8db94e766c6e4c8c4c2d45a44ee03a5 cleanup: failed to delete container from containerd: no such container"
    Jan 02 15:00:33 colossus dockerd[136537]: time="2018-01-02T15:00:33.157230927Z" level=error msg="Handler for POST /v1.35/containers/c60a6261b7381f5739fa11e6df8b4219d8db94e766c6e4c8c4c2d45a44ee03a5/start returned error: OCI runtime create failed: unable to retrieve OCI runtime error (open /run/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/c60a6261b7381f5739fa11e6df8b4219d8db94e766c6e4c8c4c2d45a44ee03a5/log.json: no such file or directory): docker-runc did not terminate sucessfully: unknown"
    Jan 02 15:09:44 colossus dockerd[136537]: time="2018-01-02T15:09:44.837926048Z" level=info msg="ignoring event" module=libcontainerd namespace=moby topic=/containers/create type="*events.ContainerCreate"
    Jan 02 15:09:44 colossus dockerd[136537]: time="2018-01-02T15:09:44Z" level=info msg="shim docker-containerd-shim started" address="/containerd-shim/moby/3e04ce212f3603d2b93339494d74e305ea6a2e8d08a3ba9c30a0c741c9232b1f/shim.sock" debug=false module="containerd/tasks" pid=145298
    Jan 02 15:09:44 colossus dockerd[136537]: time="2018-01-02T15:09:44Z" level=info msg="shim reaped" id=3e04ce212f3603d2b93339494d74e305ea6a2e8d08a3ba9c30a0c741c9232b1f module="containerd/tasks"
    Jan 02 15:09:44 colossus dockerd[136537]: time="2018-01-02T15:09:44.899560066Z" level=error msg="stream copy error: reading from a closed fifo"
    Jan 02 15:09:44 colossus dockerd[136537]: time="2018-01-02T15:09:44.899585062Z" level=error msg="stream copy error: reading from a closed fifo"
    Jan 02 15:09:44 colossus dockerd[136537]: time="2018-01-02T15:09:44.921068216Z" level=info msg="ignoring event" module=libcontainerd namespace=moby topic=/containers/delete type="*events.ContainerDelete"
    Jan 02 15:09:45 colossus dockerd[136537]: time="2018-01-02T15:09:45.309201262Z" level=error msg="3e04ce212f3603d2b93339494d74e305ea6a2e8d08a3ba9c30a0c741c9232b1f cleanup: failed to delete container from containerd: no such container"
    Jan 02 15:09:45 colossus dockerd[136537]: time="2018-01-02T15:09:45.309254679Z" level=error msg="Handler for POST /v1.35/containers/3e04ce212f3603d2b93339494d74e305ea6a2e8d08a3ba9c30a0c741c9232b1f/start returned error: OCI runtime create failed: unable to retrieve OCI runtime error (open /run/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/3e04ce212f3603d2b93339494d74e305ea6a2e8d08a3ba9c30a0c741c9232b1f/log.json: no such file or directory): docker-runc did not terminate sucessfully: unknown"
    

    我得到的错误(sudo docker run hello world)是:

    docker:来自守护程序的错误响应:OCI runtime create失败:无法检索OCI runtime错误(open/run/docker/containerd/daemon/io.containerd.runtime.v1.linux/moby/3E04CE212F3603D2B933394D74E305EA6A2E8D08A3BA9C30A0C741C9232B1F/log.json:无此类文件或目录):docker runc未成功终止:未知。 ERRO[0001]等待容器时出错:上下文已取消

    docker--版本

     Docker version 17.12.0-ce, build c97c6d6
    

    这是docker的信息

    Containers: 27
     Running: 0
     Paused: 0
     Stopped: 27
    Images: 47
    Server Version: 17.12.0-ce
    Storage Driver: devicemapper
     Pool Name: docker-253:0-135160107-pool
     Pool Blocksize: 65.54kB
     Base Device Size: 10.74GB
     Backing Filesystem: xfs
     Udev Sync Supported: true
     Data file: /dev/loop0
     Metadata file: /dev/loop1
     Data loop file: /var/lib/docker/devicemapper/devicemapper/data
     Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
     Data Space Used: 14.4GB
     Data Space Total: 107.4GB
     Data Space Available: 25.82GB
     Metadata Space Used: 12.6MB
     Metadata Space Total: 2.147GB
     Metadata Space Available: 2.135GB
     Thin Pool Minimum Free Space: 10.74GB
     Deferred Removal Enabled: true
     Deferred Deletion Enabled: true
     Deferred Deleted Device Count: 0
     Library Version: 1.02.140-RHEL7 (2017-05-03)
    Logging Driver: json-file
    Cgroup Driver: cgroupfs
    Plugins:
     Volume: local
     Network: bridge host macvlan null overlay
     Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
    Swarm: inactive
    Runtimes: runc
    Default Runtime: runc
    Init Binary: docker-init
    containerd version: 89623f28b87a6004d4b785663257362d1658a729
    runc version: N/A (expected: b2567b37d7b75eb4cf325b77297b140ea686ce8f)
    init version: 949e6fa
    Security Options:
     seccomp
      Profile: default
    Kernel Version: 3.10.0-327.36.3.el7.x86_64
    Operating System: CentOS Linux 7 (Core)
    OSType: linux
    Architecture: x86_64
    CPUs: 88
    Total Memory: 125.6GiB
    Name: colossus
    ID: HV7I:KP2J:N6SQ:SAEP:MWSO:O5T3:Y2PE:L6TL:2D6L:IHVD:SQ3E:TM5P
    Docker Root Dir: /var/lib/docker
    Debug Mode (client): false
    Debug Mode (server): false
    Registry: https://index.docker.io/v1/
    Labels:
    Experimental: false
    Insecure Registries:
     127.0.0.0/8
    Live Restore Enabled: false
    
    WARNING: devicemapper: usage of loopback devices is strongly discouraged for production use.
             Use `--storage-opt dm.thinpooldev` to specify a custom block storage device.
    WARNING: bridge-nf-call-iptables is disabled
    WARNING: bridge-nf-call-ip6tables is disabled
    
    2 回复  |  直到 8 年前
        1
  •  2
  •   BMitch    8 年前

    您很可能安装了一个破坏runc的旧包。请确保将您的操作系统升级到当前版本(对于CentOS,这是1708,或等效于RHEL的7.4)。其他人有 reported similar issues 与包过期相关。

        2
  •  1
  •   dangogh    7 年前

    我有两个具有相同CentOS 7.2版本和内核的系统。其中一个有问题,但另一个没有。比较软件包版本表明containerd的版本有所不同。io--我在非工作版本上降级了,它工作了:

    $ sudo yum downgrade containerd.io-1.2.0-3.el7
    Removed:
     containerd.io.x86_64 0:1.2.4-3.1.el7
    
    Installed:
      containerd.io.x86_64 0:1.2.0-3.el7