[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Releasing guix binary in Docker format too?
From: |
Pjotr Prins |
Subject: |
Re: Releasing guix binary in Docker format too? |
Date: |
Wed, 23 Sep 2020 13:07:24 +0200 |
User-agent: |
NeoMutt/20170113 (1.7.2) |
Hi Danny!
On Tue, Sep 22, 2020 at 11:51:05AM +0200, Danny Milosavljevic wrote:
> Now, Heads has most of its stuff on CI servers that use Docker for a lot of
> things.
It would be very interesting to have a Docker registry for a number of
(complicated) Guix packages. We have bioinformatics packages living in
channels such as
http://git.genenetwork.org/guix-bioinformatics/guix-bioinformatics.
Bonface built a GeneNetwork Docker image for CI. I would like to see
Docker images for vgtools, gemma, sambamba and other products we are
(co)developing.
A Guix Docker container could be the starting point for live installs
on highly divergent systems (including an HPC cluster we are
building).
> While I was researching gitlab, I came across a feature where they have their
> own Docker container registry on there. Apparently, the Docker CLI can fetch
> from whatever server the user wants!
>
> $ docker run [options] registry.gitlab.com/group/project/image [arguments]
>
> That got me thinking, we could easily also release Guix on something like
> that. Is our HTTP webserver enough to have a Docker registry, without
> installing extra stuff?
>
> $ docker run localhost/foo
> Unable to find image 'localhost/foo:latest' locally
> docker: Error response from daemon: Get "http://localhost/v2/": dial tcp
> 127.0.0.1:80: connect: connection refused.
>
> Aha!
>
> Do we want to do it?
I say YES :). If we have a way to create these containers we can
distribute them through http IPFS. We'll help write a nice discovery
web interface which initially can be a simple web page. I don't think
we need Docker containers for every package. But if there is a demand
for a specific tool it can be very helpful to distribute software that
way.
In fact, one software I am writing depends on a host of programming
languages including Python, Racket and Rust. A Guix Docker container
is by far the simplest solution to distribute the software. And Guix
containers are tiny - which is really nice.
Pj.