Bug 1387831
Summary: | Cannot start existing containers | |||
---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Lukas Slebodnik <lslebodn> | |
Component: | docker | Assignee: | Antonio Murdaca <amurdaca> | |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | |
Severity: | unspecified | Docs Contact: | ||
Priority: | unspecified | |||
Version: | 25 | CC: | adimania, admiller, amurdaca, bkabrda, dwalsh, ichavero, jcajka, jchaloup, lsm5, marianne, miabbott, miminar, mpatel, nalin, pahan, riek, twaugh, vbatts | |
Target Milestone: | --- | Keywords: | Reopened | |
Target Release: | --- | |||
Hardware: | Unspecified | |||
OS: | Unspecified | |||
Whiteboard: | ||||
Fixed In Version: | docker-1.12.6-4.gitf499e8b.fc25 | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 1411980 (view as bug list) | Environment: | ||
Last Closed: | 2017-01-16 19:51:40 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: | ||||
Bug Depends On: | ||||
Bug Blocks: | 1411980 |
Description
Lukas Slebodnik
2016-10-22 10:08:56 UTC
Debug log from docker-containerd sh# /usr/libexec/docker/docker-containerd-current --listen unix:///run/containerd.sock --shim /usr/libexec/docker/docker-containerd-shim-current --debug WARN[0000] containerd: low RLIMIT_NOFILE changing to max current=1024 max=4096 DEBU[0000] containerd: read past events count=12 DEBU[0000] containerd: supervisor running cpus=8 memory=15676 runtime=runc runtimeArgs=[] stateDir=/run/containerd DEBU[0000] containerd: grpc api on /run/containerd.sock ERRO[0021] containerd: start container error=shim error: docker-runc not installed on system id=5279c4f1a2eaf153cedaf4f037cc230fd363a9222bded17ecff8e8438a492f40 Debug log from docker.service: sh# /usr/bin/dockerd-current --add-runtime oci=/usr/libexec/docker/docker-runc-current --default-runtime=oci --containerd /run/containerd.sock --exec-opt native.cgroupdriver=systemd --userland-proxy-path=/usr/libexec/docker/docker-proxy-current --selinux-enabled --log-driver=journald -s btrfs --debug DEBU[0000] Warning: could not change group /var/run/docker.sock to docker: Group docker not found DEBU[0000] Listener created for HTTP on unix (/var/run/docker.sock) DEBU[0000] libcontainerd: containerd connection state change: CONNECTING DEBU[0000] libcontainerd: containerd connection state change: READY DEBU[0000] Using default logging driver journald DEBU[0000] Golang's threads limit set to 112680 DEBU[0000] [graphdriver] trying provided driver "btrfs" DEBU[0000] Using graph driver btrfs DEBU[0000] Max Concurrent Downloads: 3 DEBU[0000] Max Concurrent Uploads: 5 INFO[0000] Graph migration to content-addressability took 0.00 seconds DEBU[0000] Loaded container 0449d7df907def40a9e1c563579220132f223acd453e3f0c36afcbee4df4d765 //snip DEBU[0000] Registering GET, /networks/{id:.*} DEBU[0000] Registering POST, /networks/create DEBU[0000] Registering POST, /networks/{id:.*}/connect DEBU[0000] Registering POST, /networks/{id:.*}/disconnect DEBU[0000] Registering DELETE, /networks/{id:.*} INFO[0000] API listen on /var/run/docker.sock DEBU[0016] Calling POST /v1.24/containers/5279c4f1a2ea/start INFO[0016] {Action=start, Username=alcik, LoginUID=1000, PID=4446} DEBU[0016] container mounted via layerStore: /var/lib/docker/btrfs/subvolumes/6467d03ccee5866f531d59276ad439a5417d66339165048fc1ec9dc7276a1c8a DEBU[0016] Assigning addresses for endpoint broken_container's interface on network bridge DEBU[0016] RequestAddress(LocalDefault/172.17.0.0/16, <nil>, map[]) DEBU[0016] Assigning addresses for endpoint broken_container's interface on network bridge DEBU[0016] Programming external connectivity on endpoint broken_container (96122d5993ad744e6c84622a108e8920844c4766f7c10ef7e60c603941ddcaa9) DEBU[0016] createSpec: cgroupsPath: system.slice:docker:5279c4f1a2eaf153cedaf4f037cc230fd363a9222bded17ecff8e8438a492f40 ERRO[0016] Create container failed with error: shim error: docker-runc not installed on system DEBU[0016] Revoking external connectivity on endpoint broken_container (96122d5993ad744e6c84622a108e8920844c4766f7c10ef7e60c603941ddcaa9) DEBU[0016] Releasing addresses for endpoint broken_container's interface on network bridge DEBU[0016] ReleaseAddress(LocalDefault/172.17.0.0/16, 172.17.0.2) ERRO[0016] Handler for POST /v1.24/containers/5279c4f1a2ea/start returned error: shim error: docker-runc not installed on system sh# docker inspect 5279c4f1a2ea [ { "Id": "5279c4f1a2eaf153cedaf4f037cc230fd363a9222bded17ecff8e8438a492f40", "Created": "2016-02-26T15:45:24.955957382Z", "Path": "bash", "Args": [], "State": { "Status": "exited", "Running": false, "Paused": false, "Restarting": false, "OOMKilled": false, "Dead": false, "Pid": 0, "ExitCode": 128, "Error": "shim error: docker-runc not installed on system", "StartedAt": "2016-10-22T09:59:26.447631798Z", "FinishedAt": "2016-10-22T09:59:28.491022428Z" }, "Image": "sha256:cbebc878a8f322e110e6b923e0e9752866b805f6d09643d6d0fc0b56d875b813", "ResolvConfPath": "/var/lib/docker/containers/5279c4f1a2eaf153cedaf4f037cc230fd363a9222bded17ecff8e8438a492f40/resolv.conf", "HostnamePath": "/var/lib/docker/containers/5279c4f1a2eaf153cedaf4f037cc230fd363a9222bded17ecff8e8438a492f40/hostname", "HostsPath": "/var/lib/docker/containers/5279c4f1a2eaf153cedaf4f037cc230fd363a9222bded17ecff8e8438a492f40/hosts", "LogPath": "", "Name": "/broken_container", "RestartCount": 0, "Driver": "btrfs", "MountLabel": "", "ProcessLabel": "", "AppArmorProfile": "", "ExecIDs": null, "HostConfig": { "Binds": [ "/dev/shm:/sssd_workdir", "/home/user:/home/user" ], "ContainerIDFile": "", "LogConfig": { "Type": "journald", "Config": {} }, "NetworkMode": "default", "PortBindings": {}, "RestartPolicy": { "Name": "no", "MaximumRetryCount": 0 }, "AutoRemove": false, "VolumeDriver": "", "VolumesFrom": null, "CapAdd": null, "CapDrop": null, "Dns": [], "DnsOptions": [], "DnsSearch": [], "ExtraHosts": null, "GroupAdd": null, "IpcMode": "", "Cgroup": "", "Links": null, "OomScoreAdj": 0, "PidMode": "", "Privileged": true, "PublishAllPorts": false, "ReadonlyRootfs": false, "SecurityOpt": [ "label:disable" ], "UTSMode": "", "UsernsMode": "", "ShmSize": 67108864, "Runtime": "runc", "ConsoleSize": [ 0, 0 ], "Isolation": "", "CpuShares": 0, "Memory": 2147483648, "CgroupParent": "", "BlkioWeight": 0, "BlkioWeightDevice": null, "BlkioDeviceReadBps": null, "BlkioDeviceWriteBps": null, "BlkioDeviceReadIOps": null, "BlkioDeviceWriteIOps": null, "CpuPeriod": 0, "CpuQuota": 0, "CpusetCpus": "0-4", "CpusetMems": "", "Devices": [], "DiskQuota": 0, "KernelMemory": 0, "MemoryReservation": 0, "MemorySwap": 4294967296, "MemorySwappiness": -1, "OomKillDisable": false, "PidsLimit": 0, "Ulimits": null, "CpuCount": 0, "CpuPercent": 0, "IOMaximumIOps": 0, "IOMaximumBandwidth": 0 }, "GraphDriver": { "Name": "btrfs", "Data": null }, "Mounts": [ { "Source": "/home/user", "Destination": "/home/user", "Mode": "", "RW": true, "Propagation": "rprivate" }, { "Source": "/dev/shm", "Destination": "/sssd_workdir", "Mode": "", "RW": true, "Propagation": "rprivate" } ], "Config": { "Hostname": "5279c4f1a2ea", "Domainname": "", "User": "user", "AttachStdin": true, "AttachStdout": true, "AttachStderr": true, "Tty": true, "OpenStdin": true, "StdinOnce": true, "Env": [ "PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "USER=user", "KRB5CCNAME=KEYRING:persistent:1000:1000" ], "Cmd": [ "bash" ], "Image": "lslebodn/beaker", "Volumes": null, "WorkingDir": "/home/user", "Entrypoint": null, "OnBuild": null, "Labels": {}, "StopSignal": "SIGTERM" }, "NetworkSettings": { "Bridge": "", "SandboxID": "a5b75a2313a674c45b16641c236fe78a372d9bf8927ff5df3c1ff04e9ff704a7", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": null, "SandboxKey": "/var/run/docker/netns/a5b75a2313a6", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, "EndpointID": "", "Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "MacAddress": "", "Networks": { "bridge": { "IPAMConfig": null, "Links": null, "Aliases": null, "NetworkID": "7a159955a7e83f6e27cc4c5d456da296bc21d7a79c2491888d6886403c2a57ee", "EndpointID": "", "Gateway": "", "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "MacAddress": "" } } } } ] Antonio could this be a path issue? So this is likely a container created with a released version of Docker which had a bug I later fixed (it was a bug in how the Docker service was configured). Unfortunately I'm not sure we can do anything about this exept telling people to re-create the container (which will then use the correct oci runtime path). Again, this is an issue with a specific Docker version released some time ago, this version set a wrong runtime path. Sorry didn't mean to close it tbh But yeah, what I described before is probably what's happening. Your container is from February 2016 and it has been likely created with a bugged Docker. I checked my dnf history and I docker was upgraded to 1:1.10.2-1.git86e59a5.fc23.x86_64 on Wed Feb 24 21:50:56 2016. And the container was created few days later "Created": "2016-02-26T15:45:24.955957382Z" Can you confirm that I used buggy version of docker? I'v got after update: $ docker start gitlab-runner Error response from daemon: fork/exec /usr/libexec/docker/docker-containerd-shim: no such file or directory Error: failed to start containers: gitlab-runner Container re-creation does not help. $ sudo dnf history info 1071 … Transaction ID : 1071 Begin time : Thu Oct 27 11:45:07 2016 Begin rpmdb : 4652:421d8fe32fec89cd51f8e8d5ba603e43ccceb52a End time : 11:45:48 2016 (41 seconds) End rpmdb : 4653:4fb3939aedd9f8df602295b1f5737ee0e5582f20 User : <pasha> Return-Code : Success Command Line : upgrade --refresh Transaction performed with: … Obsoleting container-selinux-2:1.12.2-3.git15c82b8.fc25.x86_64 @fedora Install container-selinux-2:1.12.2-3.git15c82b8.fc25.x86_64 @fedora Upgraded docker-2:1.12.1-13.git9a3752d.fc25.x86_64 @@commandline Upgrade 2:1.12.2-3.git15c82b8.fc25.x86_64 @fedora Install docker-common-2:1.12.2-3.git15c82b8.fc25.x86_64 @fedora Obsoleted docker-selinux-2:1.12.1-13.git9a3752d.fc25.x86_64 @@commandline Upgraded docker-v1.10-migrator-2:1.12.1-13.git9a3752d.fc25.x86_64 @@commandline Upgrade 2:1.12.2-3.git15c82b8.fc25.x86_64 @fedora I'm experiencing same problems as Pavel described in comment 9, except I'm trying to create and run a container, not running an existing one. $ docker run -ti fedora:24 bash /usr/bin/docker-current: Error response from daemon: fork/exec /usr/libexec/docker/docker-containerd-shim: no such file or directory. $ rpm -q docker docker-1.12.3-5.git9a594b9.fc25.x86_64 $ sudo dnf history info [sudo] password for bkabrda: Transaction ID : 608 Begin time : Wed Nov 9 14:41:05 2016 Begin rpmdb : 2880:38d14aec1b5b24dbb13521e66060c665bae7ffee End time : 14:41:52 2016 (47 seconds) End rpmdb : 2882:e86f1267f8a154faf4b3067720c74c11c90bbece User : Slavek Kabrda <bkabrda> Return-Code : Success Command Line : update --enablerepo=updates-testing Transaction performed with: Installed dnf-1.1.10-3.fc25.noarch @updates-testing Installed rpm-4.13.0-1.fc25.x86_64 @updates-testing Packages Altered: Install skopeo-containers-0.1.14-5.git550a480.fc25.x86_64 @updates-testing Obsoleting container-selinux-2:1.12.3-5.git9a594b9.fc25.x86_64 @updates-testing Install container-selinux-2:1.12.3-5.git9a594b9.fc25.x86_64 @updates-testing Upgraded docker-2:1.12.1-13.git9a3752d.fc25.x86_64 @fedora Upgrade 2:1.12.3-5.git9a594b9.fc25.x86_64 @updates-testing Install docker-common-2:1.12.3-5.git9a594b9.fc25.x86_64 @updates-testing Obsoleted docker-selinux-2:1.12.1-13.git9a3752d.fc25.x86_64 @fedora Ok, I just found out that I had to restart both docker and docker-containerd and everything started working again. (In reply to Bohuslav "Slavek" Kabrda from comment #10) > I'm experiencing same problems as Pavel described in comment 9, except I'm > trying to create and run a container, not running an existing one. > > $ docker run -ti fedora:24 bash > /usr/bin/docker-current: Error response from daemon: fork/exec > /usr/libexec/docker/docker-containerd-shim: no such file or directory. > > $ rpm -q docker > docker-1.12.3-5.git9a594b9.fc25.x86_64 > This BZ is about starting already existing contianer. You want to start new container. IIRC you hit other bug with upgrading docker. Following command should help :-) systemctl restart docker.service docker-containerd.service I believe I ran into this issue when I upgraded my RHEL Atomic Host from 7.3.1 to 7.3.2. On RHELAH 7.3.1, docker 1.10.3-59 was used to create the containers. I had a private registry created on my system like so: docker run -d -p 5000:5000 --restart=always --name registry registry:2 After I upgraded to RHELAH 7.3.2 (docker 1.12.5-8), my registry container did not restart as expected: # docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 776b6478ced3 registry:2 "/entrypoint.sh /etc/" 3 minutes ago Exited (128) 24 seconds ago registry I had to delete the existing container and then run the 'docker run' command again to start a fresh container. # docker rm registry registry # docker run -d -p 5000:5000 --restart=always --name registry registry:2 40cc1deb93cd8447b7b3dcc1b31e9a51aba00cf15e5e5d4711525154355e3922 # docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 40cc1deb93cd registry:2 "/entrypoint.sh /etc/" 4 seconds ago Up 2 seconds 0.0.0.0:5000->5000/tcp registry In my experience, it seems like this only affects containers that have exposed ports. For example, when I use 'atomic run docker.io/cockpit/ws' using docker 1.10 backend, then try to 'docker start' the container with docker 1.12, I encounter no problems. (In reply to Micah Abbott from comment #13) > I believe I ran into this issue when I upgraded my RHEL Atomic Host from > 7.3.1 to 7.3.2. > > On RHELAH 7.3.1, docker 1.10.3-59 was used to create the containers. Oops, I see this was originally opened against Fedora/docker but it looks like the same problem exists on RHEL. I'll have to clone this bug for RHEL. A very basic reproducer for this one just for the record: - with docker-1.10.x: docker run -d -p 5000:5000 --restart=always --name registry registry:2 - upgrade to docker-1.12.6 - docker ps should show the "registry" container previously started (without the fix, the last point will fail to show that container as running) docker-1.12.6-4.gitf499e8b.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-4909cf95eb docker-1.12.6-4.gitf499e8b.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-4909cf95eb docker-1.12.6-4.gitf499e8b.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report. |