summaryrefslogtreecommitdiff
path: root/gnu/services/docker.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-06-01 20:54:40 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-06-03 11:31:07 -0400
commit7c9be7b7cb71103d8a382a254e8c7a20ce7adce0 (patch)
tree84dd1265f601533e3bbf1930dca75541888f8d10 /gnu/services/docker.scm
parent2f49007dd076b14feb40d7c3331dee3e737265c8 (diff)
gnu: services: docker: Add a debug? parameter.
* gnu/services/docker.scm (docker-configuration): Add a debug? field. (containerd-shepherd-service): Pass the "--log-level=debug" argument when DEBUG? is true. (docker-shepherd-service): Pass the "--debug" and "--log-level=debug" arguments when DEBUG? is true. * doc/guix.texi (Miscellaneous Services): Update doc.
Diffstat (limited to 'gnu/services/docker.scm')
-rw-r--r--gnu/services/docker.scm20
1 files changed, 16 insertions, 4 deletions
diff --git a/gnu/services/docker.scm b/gnu/services/docker.scm
index d6dc7928214..937dff7bdbe 100644
--- a/gnu/services/docker.scm
+++ b/gnu/services/docker.scm
@@ -1,6 +1,7 @@
1;;; GNU Guix --- Functional package management for GNU 1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org> 2;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
3;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> 3;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
4;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
4;;; 5;;;
5;;; This file is part of GNU Guix. 6;;; This file is part of GNU Guix.
6;;; 7;;;
@@ -52,7 +53,10 @@
52loop-back communications.") 53loop-back communications.")
53 (enable-proxy? 54 (enable-proxy?
54 (boolean #t) 55 (boolean #t)
55 "Enable or disable the user-land proxy (enabled by default).")) 56 "Enable or disable the user-land proxy (enabled by default).")
57 (debug?
58 (boolean #f)
59 "Enable or disable debug output."))
56 60
57(define %docker-accounts 61(define %docker-accounts
58 (list (user-group (name "docker") (system? #t)))) 62 (list (user-group (name "docker") (system? #t))))
@@ -71,19 +75,24 @@ loop-back communications.")
71 (mkdir-p #$state-dir)))) 75 (mkdir-p #$state-dir))))
72 76
73(define (containerd-shepherd-service config) 77(define (containerd-shepherd-service config)
74 (let* ((package (docker-configuration-containerd config))) 78 (let* ((package (docker-configuration-containerd config))
79 (debug? (docker-configuration-debug? config)))
75 (shepherd-service 80 (shepherd-service
76 (documentation "containerd daemon.") 81 (documentation "containerd daemon.")
77 (provision '(containerd)) 82 (provision '(containerd))
78 (start #~(make-forkexec-constructor 83 (start #~(make-forkexec-constructor
79 (list (string-append #$package "/bin/containerd")) 84 (list (string-append #$package "/bin/containerd")
85 #$@(if debug?
86 '("--log-level=debug")
87 '()))
80 #:log-file "/var/log/containerd.log")) 88 #:log-file "/var/log/containerd.log"))
81 (stop #~(make-kill-destructor))))) 89 (stop #~(make-kill-destructor)))))
82 90
83(define (docker-shepherd-service config) 91(define (docker-shepherd-service config)
84 (let* ((docker (docker-configuration-docker config)) 92 (let* ((docker (docker-configuration-docker config))
85 (enable-proxy? (docker-configuration-enable-proxy? config)) 93 (enable-proxy? (docker-configuration-enable-proxy? config))
86 (proxy (docker-configuration-proxy config))) 94 (proxy (docker-configuration-proxy config))
95 (debug? (docker-configuration-debug? config)))
87 (shepherd-service 96 (shepherd-service
88 (documentation "Docker daemon.") 97 (documentation "Docker daemon.")
89 (provision '(dockerd)) 98 (provision '(dockerd))
@@ -101,6 +110,9 @@ loop-back communications.")
101 (start #~(make-forkexec-constructor 110 (start #~(make-forkexec-constructor
102 (list (string-append #$docker "/bin/dockerd") 111 (list (string-append #$docker "/bin/dockerd")
103 "-p" "/var/run/docker.pid" 112 "-p" "/var/run/docker.pid"
113 #$@(if debug?
114 '("--debug" "--log-level=debug")
115 '())
104 (if #$enable-proxy? "--userland-proxy" "") 116 (if #$enable-proxy? "--userland-proxy" "")
105 "--userland-proxy-path" (string-append #$proxy 117 "--userland-proxy-path" (string-append #$proxy
106 "/bin/proxy")) 118 "/bin/proxy"))