services: oci-container: Allow setting Shepherd auto-start? in oci-container-configuration.
* gnu/services/docker.scm (oci-container-configuration) [auto-start?]: New field. (oci-container-shepherd-service): use it. * doc/guix.texi: Document it. Change-Id: Id093d93effbbec3e1be757f8be83cf5f62eaeda7 Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn>master
parent
30ba86cb71
commit
7d91bd4530
|
@ -40890,6 +40890,10 @@ When @code{log-file} is set, it names the file to which the service's
|
||||||
standard output and standard error are redirected. @code{log-file} is created
|
standard output and standard error are redirected. @code{log-file} is created
|
||||||
if it does not exist, otherwise it is appended to.
|
if it does not exist, otherwise it is appended to.
|
||||||
|
|
||||||
|
@item @code{auto-start?} (default: @code{#t}) (type: boolean)
|
||||||
|
Whether this service should be started automatically by the Shepherd. If it
|
||||||
|
is @code{#f} the service has to be started manually with @command{herd start}.
|
||||||
|
|
||||||
@item @code{network} (default: @code{""}) (type: string)
|
@item @code{network} (default: @code{""}) (type: string)
|
||||||
Set a Docker network for the spawned container.
|
Set a Docker network for the spawned container.
|
||||||
|
|
||||||
|
|
|
@ -75,6 +75,7 @@
|
||||||
oci-container-configuration-provision
|
oci-container-configuration-provision
|
||||||
oci-container-configuration-requirement
|
oci-container-configuration-requirement
|
||||||
oci-container-configuration-log-file
|
oci-container-configuration-log-file
|
||||||
|
oci-container-configuration-auto-start?
|
||||||
oci-container-configuration-network
|
oci-container-configuration-network
|
||||||
oci-container-configuration-ports
|
oci-container-configuration-ports
|
||||||
oci-container-configuration-volumes
|
oci-container-configuration-volumes
|
||||||
|
@ -467,6 +468,10 @@ service.")
|
||||||
"When @code{log-file} is set, it names the file to which the service’s
|
"When @code{log-file} is set, it names the file to which the service’s
|
||||||
standard output and standard error are redirected. @code{log-file} is created
|
standard output and standard error are redirected. @code{log-file} is created
|
||||||
if it does not exist, otherwise it is appended to.")
|
if it does not exist, otherwise it is appended to.")
|
||||||
|
(auto-start?
|
||||||
|
(boolean #t)
|
||||||
|
"Whether this service should be started automatically by the Shepherd. If it
|
||||||
|
is @code{#f} the service has to be started manually with @command{herd start}.")
|
||||||
(network
|
(network
|
||||||
(maybe-string)
|
(maybe-string)
|
||||||
"Set a Docker network for the spawned container.")
|
"Set a Docker network for the spawned container.")
|
||||||
|
@ -670,6 +675,8 @@ operating-system, gexp or file-like records but ~a was found")
|
||||||
(oci-image-repository image))))))
|
(oci-image-repository image))))))
|
||||||
|
|
||||||
(let* ((docker (file-append docker-cli "/bin/docker"))
|
(let* ((docker (file-append docker-cli "/bin/docker"))
|
||||||
|
(auto-start?
|
||||||
|
(oci-container-configuration-auto-start? config))
|
||||||
(user (oci-container-configuration-user config))
|
(user (oci-container-configuration-user config))
|
||||||
(group (oci-container-configuration-group config))
|
(group (oci-container-configuration-group config))
|
||||||
(host-environment
|
(host-environment
|
||||||
|
@ -688,6 +695,7 @@ operating-system, gexp or file-like records but ~a was found")
|
||||||
(shepherd-service (provision `(,(string->symbol name)))
|
(shepherd-service (provision `(,(string->symbol name)))
|
||||||
(requirement `(dockerd user-processes ,@requirement))
|
(requirement `(dockerd user-processes ,@requirement))
|
||||||
(respawn? #f)
|
(respawn? #f)
|
||||||
|
(auto-start? auto-start?)
|
||||||
(documentation
|
(documentation
|
||||||
(string-append
|
(string-append
|
||||||
"Docker backed Shepherd service for "
|
"Docker backed Shepherd service for "
|
||||||
|
|
Reference in New Issue