diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-05-07 12:35:35 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-05-07 12:55:14 +0200 |
commit | d6c43d7bc1543f22bb850a2bad529bf3d60789ad (patch) | |
tree | 2fb01a3546f0f2d92027722cdd5e5ad8e8a63123 /gnu/system/vm.scm | |
parent | 8d65a71e5fb21303df8628f89e84d2684738f145 (diff) | |
download | guix-d6c43d7bc1543f22bb850a2bad529bf3d60789ad.tar guix-d6c43d7bc1543f22bb850a2bad529bf3d60789ad.tar.gz |
guix system: 'docker-image' honors '--network'.
* gnu/system/vm.scm (system-docker-image): Add #:shared-network? and
pass it to 'containerized-operating-system'.
(qemu-image):
* guix/scripts/system.scm (system-derivation-for-action): Pass
#:shared-network? to 'system-docker-image'.
* doc/guix.texi (Invoking guix system): Document it.
Diffstat (limited to 'gnu/system/vm.scm')
-rw-r--r-- | gnu/system/vm.scm | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 1cab8997b4..2e82e12be2 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -419,13 +419,17 @@ system." (define* (system-docker-image os #:key (name "guix-docker-image") - (register-closures? (has-guix-service-type? os))) + (register-closures? (has-guix-service-type? os)) + shared-network?) "Build a docker image. OS is the desired <operating-system>. NAME is the -base name to use for the output file. When REGISTER-CLOSURES? is true, -register the closure of OS with Guix in the resulting Docker image. By -default, REGISTER-CLOSURES? is set to true only if a service of type -GUIX-SERVICE-TYPE is present in the services definition of the operating -system." +base name to use for the output file. When SHARED-NETWORK? is true, assume +that the container will share network with the host and thus doesn't need a +DHCP client, nscd, and so on. + +When REGISTER-CLOSURES? is true, register the closure of OS with Guix in the +resulting Docker image. By default, REGISTER-CLOSURES? is set to true only if +a service of type GUIX-SERVICE-TYPE is present in the services definition of +the operating system." (define schema (and register-closures? (local-file (search-path %load-path @@ -442,7 +446,9 @@ system." (let ((os (operating-system-with-gc-roots - (containerized-operating-system os '()) + (containerized-operating-system os '() + #:shared-network? + shared-network?) (list boot-program))) (name (string-append name ".tar.gz")) (graph "system-graph")) |