summary refs log tree commit diff
diff options
context:
space:
mode:
authorOleg Pykhalov <go.wigust@gmail.com>2020-10-17 00:40:45 +0300
committerOleg Pykhalov <go.wigust@gmail.com>2020-10-17 00:43:24 +0300
commit6a5a477df46a0329cc867c4780b59cdf4340d034 (patch)
tree446022112eb0ad8c52a1c8bf1d4247aeb9543cd9
parent6c03d15d7d84c00b02efea0a60e91f55f5541b57 (diff)
downloadguix-6a5a477df46a0329cc867c4780b59cdf4340d034.tar.gz
services: docker: Fix missing containerd-shim binary.
This commit fixes error 'time="2020-10-16T…" level=error msg="Handler for POST
/v1.40/containers/…/start returned error: failed to start shim: exec:
\"containerd-shim\": executable file not found in $PATH: unknown"'.

* gnu/services/docker.scm
(containerd-shepherd-service): Add "containerd-shim" to PATH.
-rw-r--r--gnu/services/docker.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm
index e23014213b..7acfbea49f 100644
--- a/gnu/services/docker.scm
+++ b/gnu/services/docker.scm
@@ -84,7 +84,8 @@ loop-back communications.")
 
 (define (containerd-shepherd-service config)
   (let* ((package (docker-configuration-containerd config))
-         (debug? (docker-configuration-debug? config)))
+         (debug? (docker-configuration-debug? config))
+         (containerd (docker-configuration-containerd config)))
     (shepherd-service
            (documentation "containerd daemon.")
            (provision '(containerd))
@@ -93,6 +94,9 @@ loop-back communications.")
                            #$@(if debug?
                                   '("--log-level=debug")
                                   '()))
+                     ;; For finding containerd-shim binary.
+                     #:environment-variables
+                     (list (string-append "PATH=" #$containerd "/bin"))
                      #:log-file "/var/log/containerd.log"))
            (stop #~(make-kill-destructor)))))