GNU bug report logs - #47617
Docker containers retain references to the runc used

Previous Next

Package: guix;

Reported by: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Date: Tue, 6 Apr 2021 14:43:01 UTC

Severity: normal

To reply to this bug, email your comments to 47617 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#47617; Package guix. (Tue, 06 Apr 2021 14:43:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Maxim Cournoyer <maxim.cournoyer <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 06 Apr 2021 14:43:01 GMT) Full text and rfc822 format available.

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

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: bug-guix <bug-guix <at> gnu.org>
Subject: Docker containers retain references to the runc used
Date: Tue, 06 Apr 2021 10:42:31 -0400
Hello Guix!

I had this surprise today, after reconfiguring my Guix System with an
upgraded docker:

Upon attempting to run an existing container created with the previous
Docker version, I got:

--8<---------------cut here---------------start------------->8---
ERROR: for moodle-docker_db_1  Cannot start service db: Unknown runtime specified /gnu/store/jx64b4nnh6yvsbp117bfjc5spqz0jfq5-runc-1.0.0-rc6/sbin/runc
--8<---------------cut here---------------end--------------->8---

It seems the containers retain the exact references to the runc used,
and it somehow cause the execution to fail when it doesn't match with
the runc that the current Docker program is using.

The workaround is to destroy the containers and recreate them from
scratch on this upgraded Docker instance.

Thanks,

Maxim




Information forwarded to bug-guix <at> gnu.org:
bug#47617; Package guix. (Sun, 20 Mar 2022 19:43:02 GMT) Full text and rfc822 format available.

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

From: Christopher Rodriguez <yewscion <at> gmail.com>
To: 47617 <at> debbugs.gnu.org
Subject: My $0.02
Date: Sun, 20 Mar 2022 15:42:37 -0400
[Message part 1 (text/plain, inline)]
Hey,

Just ran into this issue myself. Was able to work around it by editing the
file:

`/var/run/docker/containers/<container-hash-goes-here>/hostconfig.json` to
point to the same `runc` executable that is listed by `guix package -I
runc`. After editing, simply run `sudo herd restart dockerd` and the edited
container will work as it used to.

Dunno how we might implement this kind of edit into the procedure that
updates `runc` in the first place, but it seems like that could be a
solution. Ideally, it would just use `runc` in the `$PATH`, but then `runc`
becomes a propagated input.

Hope this helps.

--

Christopher Rodriguez
[Message part 2 (text/html, inline)]

This bug report was last modified 2 years and 30 days ago.

Previous Next


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