guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: guix pack -f docker ... works!


From: Ludovic Courtès
Subject: Re: guix pack -f docker ... works!
Date: Fri, 09 Feb 2018 18:08:15 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Hello!

dvn <address@hidden> skribis:

> I'm experimenting with `guix pack`, particularly with the docker format.
>
> I want to generate a tarball like so `guix pack -f docker bash
> figlet` -- and then after loading with docker, be able to run the packed
> commands. No $PATH is set in the container, so after digging around in
> the tarball, I decided to try something like this: `docker run -ti 
> profile:lhavpi5ngs7infrh9b4nppriy4azgbwv
> /gnu/store/ars9lm9jk9hgdifg0gqvf1jrvz5mdg1j-bash-4.4.12/bin/bash` -- and
> that works! woo!
>
> This is much nicer than using an unverified Debian or Ubuntu layer in a 
> docker container, just have a
> way of installing a few packages -- which is really all we need in containers 
> 99% of the time.

Glad you like it.  :-)

> What have other people done in this direction?

There’s Pjotr’s notes and a couple of blog posts about this:

  https://www.gnu.org/software/guix/blog/2017/creating-bundles-with-guix-pack/

  https://guix-hpc.bordeaux.inria.fr/blog/2017/10/using-guix-without-being-root/

> What are some ideas for setting up the $PATH in a nice way?

The pack already contains /gnu/store/…-profile/etc/profile.  You could
use ‘-S /etc=etc’ but you still have to source /etc/profile
manually—well, except if you run Bash in the container since Bash is
going to source /etc/profile automatically!

We’ve been discussing ways to automate this (when one doesn’t use Bash
in the container), possibly by providing an entry point in the Docker
metadata and things like that.

Thanks for your feedback!

Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]