GNU bug report logs - #48035
Fwd: regression: “guix pack” Docker images no longer work on AWS

Previous Next

Package: guix;

Reported by: Ricardo Wurmus <rekado <at> elephly.net>

Date: Mon, 26 Apr 2021 15:17:02 UTC

Severity: important

To reply to this bug, email your comments to 48035 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#48035; Package guix. (Mon, 26 Apr 2021 15:17:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ricardo Wurmus <rekado <at> elephly.net>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Mon, 26 Apr 2021 15:17:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: bug-guix <at> gnu.org
Subject: Fwd: regression: “guix pack” Docker images no
 longer work on AWS
Date: Mon, 26 Apr 2021 17:16:15 +0200
Hi Guix,

I’m using “guix pack”-generated Docker images on AWS ECS.  On June 
17,
2020 I generated and uploaded an image that works fine.  According 
to
AWS this image has this manifest type:

   application/vnd.docker.distribution.manifest.v2+json

Today I generated a new image that does not work.  It cannot be 
opened
by ECS; it cannot find /bin/sh, which exists.  The manifest type 
is now
recognized as

   application/vnd.oci.image.manifest.v1+json

It also now detects an “Artifact media type” and prints it as

   application/vnd.oci.image.config.v1+json

I’d very much like to push a newly generated image.  Is there a 
way to
generate the image as it was done in the summer of 2020?

Note that both these images appear to work “fine” with a local 
Docker
installation (i.e. when run with “docker run”).  (When running 
/bin/sh
in the container interactively it appears to freeze whenever I try 
to
actually run a command, but perhaps I’m just holding it wrong…)

-- 
Ricardo




Information forwarded to bug-guix <at> gnu.org:
bug#48035; Package guix. (Tue, 27 Apr 2021 06:57:01 GMT) Full text and rfc822 format available.

Message #8 received at 48035 <at> debbugs.gnu.org (full text, mbox):

From: Efraim Flashner <efraim <at> flashner.co.il>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: 48035 <at> debbugs.gnu.org
Subject: Re: bug#48035: Fwd: regression: “guix pack” Docker images no longer work on AWS
Date: Tue, 27 Apr 2021 09:55:40 +0300
[Message part 1 (text/plain, inline)]
On Mon, Apr 26, 2021 at 05:16:15PM +0200, Ricardo Wurmus wrote:
> 
> Hi Guix,
> 
> I’m using “guix pack”-generated Docker images on AWS ECS.  On June 17,
> 2020 I generated and uploaded an image that works fine.  According to
> AWS this image has this manifest type:
> 
>    application/vnd.docker.distribution.manifest.v2+json
> 
> Today I generated a new image that does not work.  It cannot be opened
> by ECS; it cannot find /bin/sh, which exists.  The manifest type is now
> recognized as
> 
>    application/vnd.oci.image.manifest.v1+json
> 
> It also now detects an “Artifact media type” and prints it as
> 
>    application/vnd.oci.image.config.v1+json
> 
> I’d very much like to push a newly generated image.  Is there a way to
> generate the image as it was done in the summer of 2020?
> 
> Note that both these images appear to work “fine” with a local Docker
> installation (i.e. when run with “docker run”).  (When running /bin/sh
> in the container interactively it appears to freeze whenever I try to
> actually run a command, but perhaps I’m just holding it wrong…)
> 

On March 10th, a couple of days before your original message, docker was
updated to 19.03.15 for some security fixes. Perhaps try locally
reverting that and see if it fixes your problem.

-- 
Efraim Flashner   <efraim <at> flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#48035; Package guix. (Tue, 27 Apr 2021 07:50:02 GMT) Full text and rfc822 format available.

Message #11 received at 48035 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: Efraim Flashner <efraim <at> flashner.co.il>
Cc: 48035 <at> debbugs.gnu.org
Subject: Re: bug#48035: Fwd: regression: “guix pack”
 Docker images no longer work on AWS
Date: Tue, 27 Apr 2021 09:48:52 +0200
Hi Efraim,

> On March 10th, a couple of days before your original message, 
> docker was
> updated to 19.03.15 for some security fixes. Perhaps try locally
> reverting that and see if it fixes your problem.

We are not using Docker to generate the Docker images.

I only have problems with the generated Docker images on AWS, 
which does not use Docker from Guix.

-- 
Ricardo




Information forwarded to bug-guix <at> gnu.org:
bug#48035; Package guix. (Wed, 28 Apr 2021 21:30:01 GMT) Full text and rfc822 format available.

Message #14 received at 48035 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: 48035 <at> debbugs.gnu.org
Subject: Re: bug#48035: Fwd: regression: “guix pack”
 Docker images no longer work on AWS
Date: Wed, 28 Apr 2021 23:29:37 +0200
[Message part 1 (text/plain, inline)]
Hi,

Ricardo Wurmus <rekado <at> elephly.net> skribis:

> I’m using “guix pack”-generated Docker images on AWS ECS.  On June 17,
> 2020 I generated and uploaded an image that works fine.  According to
> AWS this image has this manifest type:
>
>    application/vnd.docker.distribution.manifest.v2+json
>
> Today I generated a new image that does not work.  It cannot be opened
> by ECS; it cannot find /bin/sh, which exists.  The manifest type is
> now
> recognized as
>
>    application/vnd.oci.image.manifest.v1+json
>
> It also now detects an “Artifact media type” and prints it as
>
>    application/vnd.oci.image.config.v1+json
>
> I’d very much like to push a newly generated image.  Is there a way to
> generate the image as it was done in the summer of 2020?
>
> Note that both these images appear to work “fine” with a local Docker
> installation (i.e. when run with “docker run”).  (When running /bin/sh
> in the container interactively it appears to freeze whenever I try to
> actually run a command, but perhaps I’m just holding it wrong…)

The Git log of (guix docker) and (guix scripts pack) doesn’t show
anything suspicious.

Could you try generating an image with ‘guix pack’ and feeding it to
Docker using Guix’ Docker service in a VM?  Attached is an OS that I
used previously to test Docker things.  (You need to run with ‘-m 8192’
or similar so that when you run ‘docker load -i
/gnu/store/…-docker-pack.tar.gz’ the whole VM disk fits into RAM.)

If you used ‘-S /bin=bin’, /bin/sh in the image is a symlink to
/gnu/store/…-bash/bin/sh, an absolute file name that’s only valid within
the image.  Perhaps Docker is confused by that like Singularity is/was.
In that case, try changing ‘guix pack’ so it produces relative symlinks
as it already does for the ‘singularity’ backend.

HTH!

Ludo’.

[docker-os.scm (text/plain, inline)]
(use-modules (gnu) (srfi srfi-1))
(use-package-modules docker linux)
(use-service-modules dbus desktop networking docker)

(operating-system
  (host-name "dockeros")
  (timezone "Europe/Paris")
  (locale "fr_FR.utf8")

  (bootloader (bootloader-configuration
               (bootloader grub-bootloader)
               (target "/dev/sdX")))
  (file-systems (cons (file-system
                        (device (file-system-label "my-root"))
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))

  (users (cons (user-account
                (name "ludo")
                (group "users")
                (supplementary-groups '("wheel"))
                (password (crypt "foo" "$6$"))
                (home-directory "/home/ludo"))
               %base-user-accounts))

  (packages (cons* docker-cli singularity %base-packages))
  (services (append (list (service docker-service-type)
                          (service dbus-root-service-type)
                          (service elogind-service-type)
                          (service dhcp-client-service-type))

                    ;; Choose a better console font.
                    (modify-services %base-services
                      (console-font-service-type
                       config => (map (lambda (tty)
                                        (cons tty "lat9u-16"))
                                      '("tty1" "tty2" "tty3" "tty4"
                                        "tty5" "tty6")))))))

Severity set to 'important' from 'normal' Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 30 Apr 2021 15:39:02 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 43 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.