unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Thompson, David" <dthompson2@worcester.edu>
To: 宋文武 <iyzsong@gmail.com>
Cc: guix-devel <guix-devel@gnu.org>
Subject: Re: Containers on Guix
Date: Thu, 20 Nov 2014 09:08:09 -0500	[thread overview]
Message-ID: <CAJ=RwfaKvx7GsSwkJZ+gyhn_-4PX1M0CrY_9jLUtCsSQvLRuOA@mail.gmail.com> (raw)
In-Reply-To: <87d28irocj.fsf@gmail.com>

On Thu, Nov 20, 2014 at 8:30 AM, 宋文武 <iyzsong@gmail.com> wrote:
> David Thompson <dthompson2@worcester.edu> writes:
>
>> I did some reading about how Docker creates containers and discovered
>> that it uses systemd-nspawn[0] to do it.  Since Guix uses dmd, using
>> systemd-nspawn isn't an option.  Does anyone have thoughts on how we
>> might have similar functionality in the Guix distro?
> I think what we need is pflask: https://github.com/ghedo/pflask
>
> A container is programs or full os running in an isolated environment.
> For a full container with rootfs, we can:
>   build the rootfs:
>     of Guix:    by using a form of `guix system init'
>     of Debian:  by using debootstrap
>
>   get it running:
>     # pflask --chroot=rootfs /sbin/init
>
> For a lightweight container without rootfs, we can:
>   build the activate script by `guix build'
>   get it running:
>     $ pflask --user=$USER activate
>     (could run by normal user by using User namespace)

Wow, thanks!  I think pflask is exactly what I'm looking for.  I'll
write a guix package and do some experiments with it soon.

>> Would an nspawn equivalent be appropriate for dmd?  Or a completely
>> separate program?
> Isolation is archieved by using Linux namespaces, IMO dmd will work
> well.

It seems that with pflask, there's no need to add anything to dmd.  We
could extend guix system to use it to generate containers.

This is a really great starting point.  Thank you very much for
pointing me in the right direction.

- Dave

  reply	other threads:[~2014-11-20 14:08 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-20  2:34 Containers on Guix David Thompson
2014-11-20  2:36 ` David Thompson
2014-11-20 13:30 ` 宋文武
2014-11-20 14:08   ` Thompson, David [this message]
2014-11-20 20:49   ` Ludovic Courtès
2014-11-20 21:24     ` Thompson, David
2014-11-21  4:10     ` David Thompson
2014-11-21  9:16       ` Ludovic Courtès
2014-11-20 14:51 ` Ludovic Courtès
2014-11-22 16:51 ` Ian Denhardt
2014-11-22 17:31   ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAJ=RwfaKvx7GsSwkJZ+gyhn_-4PX1M0CrY_9jLUtCsSQvLRuOA@mail.gmail.com' \
    --to=dthompson2@worcester.edu \
    --cc=guix-devel@gnu.org \
    --cc=iyzsong@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).