You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general@james.apache.org by Tobias Verbeke <to...@openanalytics.eu> on 2020/11/17 20:55:53 UTC

linagora Docker images

L.S.

When exploring the getting started guide I noticed the Docker image referred to was

  docker run -p "25:25" -p "143:143" linagora/james-jpa-sample:3.5.0 

While I very much appreciate and respect the contributions by the Linagora team, I was wondering whether it would not be cleaner to publish these images under a vendor-neutral Docker hub account e.g. under apache similarly to e.g. hadoop images which are available at

https://hub.docker.com/r/apache/hadoop

Also, as a side note, it might be interesting to add a link pointing to the Git repository / location where the Dockerfile can be found (as a way to further explore the project).

Best,
Tobias

Re: linagora Docker images

Posted by Jean Helou <je...@gmail.com>.
Hi jamers,

Cleaning up my mailbox, I stumbled on this subject. I was actually looking
into how the docker images are currently created, in order to add one for
my own (pure smtp relay) assembly.

Work needs to be done on that. I'll open a INFRA ticket to get the
> permission. Commiter conducting the release process would need to build
> & tag & push docker images.
>

I found the ticket at https://issues.apache.org/jira/browse/INFRA-21180 it
has been processed by infra during the holiday period \o/

On a similar topic we need to work on Guice servers packaging. See
> https://issues.apache.org/jira/browse/JAMES-3261,
> https://github.com/apache/james-project/pull/221.


JAMES-3261 states:

As such, in order to promote guice servers adoption, we need to build a ZIP
> distribution for them. This ZIP distribution would then be built upon the
> release and easily uploaded on the website.

[...]

Docker distributions would then reuse this ZIP in order to build the
> resulting image. Note that sample configuration will then be centralized to
> the APP maven project.


I don't really care about the zip distribution but I understand why it may
make sense. I would like to argue for a different direction for the docker
images though.
In the same way the PR proposes to use the maven-assembly-plugin to build
the zip distribution, I would like to use the maven jib plugin to build the
corresponding images instead of the shell scripts currently used.
Here are a few pro and cons:
pros:
- jib builds optimized docker images which are harder to achieve by hand
using a dockerfile
- using a maven plugins would make it easier to refactor the build. I spent
a couple days on a spike to extract and group runnable assemblies, to make
them more easily discoverable for people new to the codebase, I aborted
the work when I started having to update the docker shell scripts manually
so they would find the relocated and renamed artifacts...
- it is slightly easier to automate (for instance publishing snapshot
releases to docker hub)
- it would avoid the current situation of out of date scripts:
  dockerfiles/packaging/guice/cassandra/package.sh references
`dockerfiles/compilation/java-8` which doesn't exist in the project anymore
(since the java-11 switch I assume) and yet it is the one mentioned in
`Generating a package for James` (which makes me curious as how linagora
packages its own docker files)
cons:
- it will most likely require duplicating some configuration (copying the
sample files I guess)

I wanted to bring this up before I spent any time working on it, I'll be
happy to read your thoughts :)

jean

Re: linagora Docker images

Posted by Tellier Benoit <bt...@apache.org>.
Le 18/11/2020 à 03:55, Tobias Verbeke a écrit :
> L.S.
>
> When exploring the getting started guide I noticed the Docker image referred to was
>
>   docker run -p "25:25" -p "143:143" linagora/james-jpa-sample:3.5.0 
>
> While I very much appreciate and respect the contributions by the Linagora team, I was wondering whether it would not be cleaner to publish these images under a vendor-neutral Docker hub account e.g. under apache similarly to e.g. hadoop images which are available at
>
> https://hub.docker.com/r/apache/hadoop
+1

Work needs to be done on that. I'll open a INFRA ticket to get the
permission. Commiter conducting the release process would need to build
& tag & push docker images.


On a similar topic we need to work on Guice servers packaging. See
https://issues.apache.org/jira/browse/JAMES-3261,
https://github.com/apache/james-project/pull/221.

I would love to see this happening before the next release.
> Also, as a side note, it might be interesting to add a link pointing to the Git repository / location where the Dockerfile can be found (as a way to further explore the project).
Thanks for the Feedback. This sounds like a good idea.
>
> Best,
> Tobias
>

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org