help-guix
[Top][All Lists]
Advanced

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

Re: Build docker image


From: David Dashyan
Subject: Re: Build docker image
Date: Sat, 17 Apr 2021 23:05:56 +0300
User-agent: mu4e 1.4.15; emacs 27.2

Bone Baboon writes:

> I am trying to build a docker image.
>
> I have added `docker` and `docker-cli` to my system configuration and
> reconfigured the system.  The `docker` command needs a docker daemon
> running.
>
> I have added the docker service to the system configuration file with
> `(service docker-service-type)` in the list of services.  When I try to
> reconfigure the system I get this error message "guix system: error:
> service 'dockerd' requires 'networking', which is not provided by any
> service".

Hey Bone Baboon!

It is not 100% clear from your message how do you want to build a docker
image.  I'm assuming that you want to use standard docker tooling and
you want to have docker daemon on YOUR system.  Correct me I'm wrong
here.

Dockder service is one of the services that extends
shepherd-root-service-type.  They form dependency graph which is
different from extension graph you might have red in guix manual.  Each
shepherd service has "provision" field that defines list of simbols that
it provides and "requirement" field (defaulting to '()) that defines
which services it requeres to run.  Shepherd uses this information to
spawn services in right order.  But in your case procedure
assert-valid-graph (found in guix) warned you that graph is invalid
instead of producing shepherd configuration that will fail when you will
boot.

So. You need a service that provisionts 'networking!  You should
probably just use %desktop-services service list like so in your
config. It contains bunch of services you normaly need including
network-manager-service.

(operating-system
  ...
  (services
   (append
    (list
     ;; list of your services goes here
     (service xfce-desktop-service-type) ;; your wm of choice
     (service docker-service-type)) ;; docker daemon
    %desktop-services)))


> I have added `docker` and `docker-cli` to my system configuration and
> reconfigured the system.  The `docker` command needs a docker daemon
> running.
Note also that you dont need to add packages to system configuration to
use them.  You could just install it for your user profile.

But there are other ways to build docker images on guix like

guix system vm docker-image yourconf.scm

or

guix pack -f docker -S /bin=bin

Check out info manual for these comands in guix if you havent yet :)

-- 
David aka zzappie



reply via email to

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