Yep. That's my plan. Work in progress :)

On 28 December 2020 10:21:16 CET, "Antonin Décimo" <antonin.decimo@gmail.com> wrote:
Hi!

If your image is using a pre-compiled version of Galène, you’ll lack
portability across distributions and architectures. You should build
Galène and run it inside the Dockerfile. You could even use a layered
Dockerfile so that Galène is build in one image, then copied in the
second image and run from there.

Starting from scratch is a bad idea.

I’d use instead the Golang Docker image. It is well documented:

https://hub.docker.com/_/golang

A simple workflow would be to have the Dockerfile inside the Galène
repo and use the example Dockerfile:

FROM golang:1.15

WORKDIR /go/src/galene
COPY . .

RUN go get -d -v ./...
RUN go install -v ./...

CMD ["galene"]

Or you could build a "self-hosting" Dockerfile that download the
package and its dependencies itself (this one is untested, I don't
have the bandwidth right now):

FROM golang:1.15

WORKDIR /go/src/galene
COPY data groups static ./

RUN go get -d -v github.com/jech/galene
RUN go install -v github.com/jech/galene

CMD ["galene"]

The Golang project provides images for Linux, Windows, macOS, and
various architectures that you can use as base images.

Once an image is build, it is *not* portable to other systems or
architectures; but the build script (the Dockerfile) may be portable.
For Windows, nanoserver is the lightest image, windowsservercore is a
bit more featured.

-- Antonin