Subject: bug#35697: closed (Re: [bug#35697] [PATCH 0/8] Make 'guix system docker-image' readily usable)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 15 May 2019 14:39:01 +0000

Your bug report

#35697: [PATCH 0/8] Make 'guix system docker-image' readily usable

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
35697: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=35697
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#35697] [PATCH 0/8] Make 'guix system docker-image' readily usable
From: Ludovic Courtès <[email-masked]>
To: [email-masked]
Cc: Chris Marusich <[email-masked]>
Date: Wed, 15 May 2019 16:37:51 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

Ludovic Courtès <[email-masked]> skribis:

> Ludovic Courtès (8):
>   system: Export 'operating-system-default-essential-services'.
>   linux-container: Improve filtering of unnecessary file systems.
>   services: 'gc-root-service-type' now has a default value.
>   linux-container: Do not add %CONTAINER-FILE-SYSTEMS to Docker image
>     OSes.
>   linux-container: Compute essential services for THIS-OPERATING-SYSTEM.
>   system: Add 'operating-system-with-gc-roots'.
>   docker: 'build-docker-image' accepts an optional #:entry-point.
>   vm: 'system-docker-image' provides an entry point.

Pushed!

I had to rebase and adjust to changes made over the last couple of days
in that area of the code.

Feedback welcome!

Ludo’.

Subject: [PATCH 0/8] Make 'guix system docker-image' readily usable
From: Ludovic Courtès <[email-masked]>
To: [email-masked]
Cc: Ludovic Courtès <[email-masked]>, Chris Marusich <[email-masked]>
Date: Sun, 12 May 2019 12:30:55 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello Guix,

On current master, ‘guix system docker-image’ produces an image without
an entry point, so one has to carefully follow the “GUIX_NEW_SYSTEM hack”
described in the manual.

Furthermore, due to other issues, the resulting image doesn’t properly
boot because it tries to mount file systems that it cannot mount, such as
/dev/shm and /dev/pts.

These patches fix both issues, such that one can just do ‘docker create’
and ‘docker start’ to get Guix System up and running in the container.
I think that’s a nice improvement.  :-)

We discussed this Friday on IRC and people said that it’s quite unusual
to provide a “full OS” (with PID 1) as a Docker image; instead, people
would rather do one image per (micro)service.  But anyway, that’s
the purpose of ‘guix system docker-image’, and I can imagine it has
use cases too.  For example, it’s a simple way to get Guix set up in
a container, for people who want to perform Guix builds in a container.

Thoughts?

Ludo’.

Ludovic Courtès (8):
  system: Export 'operating-system-default-essential-services'.
  linux-container: Improve filtering of unnecessary file systems.
  services: 'gc-root-service-type' now has a default value.
  linux-container: Do not add %CONTAINER-FILE-SYSTEMS to Docker image
    OSes.
  linux-container: Compute essential services for THIS-OPERATING-SYSTEM.
  system: Add 'operating-system-with-gc-roots'.
  docker: 'build-docker-image' accepts an optional #:entry-point.
  vm: 'system-docker-image' provides an entry point.

 doc/guix.texi                  |  18 +++--
 gnu/services.scm               |   5 +-
 gnu/system.scm                 |  18 ++++-
 gnu/system/linux-container.scm |  30 ++++++---
 gnu/system/vm.scm              |  18 ++++-
 gnu/tests/docker.scm           | 118 ++++++++++++++++++++++++++++++++-
 gnu/tests/install.scm          |  11 ---
 guix/docker.scm                |  15 +++--
 8 files changed, 195 insertions(+), 38 deletions(-)

-- 
2.21.0