[ome-devel] Omero and docker

Josh Moore josh at glencoesoftware.com
Thu Jan 15 19:47:13 GMT 2015


On Thu, Jan 15, 2015 at 5:18 PM, Hadrien Mary <hadrien.mary at gmail.com> wrote:
> Awesome. I was thinking using fig as well. I will have a look.

Agreed. Thanks, Harri! The `omero-in-a-box` strategy using supervisord
worked well for development but predated docker's acquisition of the
fig project and shouldn't be copied. fig (and therefore eventually
compose) will definitely be the way forward.


More inline.


> On Thu, Jan 15, 2015 at 4:13 PM, Harri Jäälinoja
> <harri.jaalinoja at helsinki.fi> wrote:

>> I'm also working on the same thing, been eyeing it for a while but started
>> seriously last week. Here's my current progress:
>>
>> https://github.com/hajaalin/fig-omero
>>
>> I managed to split everything in separate containers and start the whole
>> show with Fig. And I like the way to pass secrets, using ejson made by
>> Shopify. The database part now starts from a pg_dump made in OMERO 4.4. Just
>> today I got LDAP working.
>>
>> My goal is to take this into production use, I think it'd make updates
>> easier later on.
>>
>> Please have a look and let me know what you think, it'd be great to have the
>> setup verified by more people :)

Will do. My other question for Hadrien was going to be whether we
could consolidate some of the base images into
https://registry.hub.docker.com/repos/openmicroscopy/ . I think in
general every involved group if not even every site will want to have
their own Dockerfiles and fig configuration. It will be more our goal
to reduce the cost of maintaining those.

>> Best,
>> Harri

>> On 15/01/15 16:01, Simon Li wrote:
>>
>> Hi Hadrien
>>
>> Thanks for your continued interest in this. We're still very much at the
>> investigative stage regarding how we're going to use Docker, and due to
>> other priorities not much has changed since your last email. More answers in
>> line...
>>
>> On 15 January 2015 at 11:08, Hadrien Mary <hadrien.mary at gmail.com> wrote:
>>>
>>> Hi guys,
>>>
>>> I created a Dockerfile some weeks ago :
>>> https://github.com/hadim/docker-omero. The main purpose was to both
>>> learn how to install OME and get some training with docker.
>>>
>>> I am planning to install an OME server for our lab and I am not
>>> satisfied with my Dockerfile since it's pretty limited and use only
>>> one instance for everything (no separated database instance).
>>>
>>> I noticed it exists two repositories which seem to be official and
>>> used there : https://github.com/ome/docker and
>>> https://github.com/omedocker/omedocker. I'd like to test these
>>> dockerfiles to see if it can fit for production in my case.
>>>
>>> My questions are:
>>>
>>> - for what purpose are you using docker (testing, production, ci...) ?
>>
>>
>> Initially CI/testing, especially with different versions of dependencies and
>> configurations, if this goes well then potentially production too.

We will likely continue to have a number of images which we need for
CI. We'll document those as such once we're sure what everyone else
can just ignore.


>>> - what is the difference between both repos ?
>>
>>
>> omedocker was the original repo designed to work with Docker Hub (automated
>> builds), from what I remember we couldn't use an organisation repo because
>> Docker Hub wanted privileged access to our GitHub account instead of just a
>> single repository (this may have changed in the intervening time).
>>
>> It was forked into ome/docker so that it would fit in to our normal workflow
>> with multiple OME team members having commit access, and being able to open
>> pull-requests.


>>> - which one should I use ?
>>
>> Probably ome/docker which is effectively our development repo, once our
>> infrastructure is fully setup the tentative plan is to push releases to
>> omedocker to be automatically built by Docker Hub.

...and https://github.com/omedocker/omedocker will be deleted soon.
All the best,
~Josh


>>> - does a more complete documentation exist about how to use these
>>> dockerfiles (currently I am reading Makefile as a documentation) ?
>>
>>
>> As I mentioned earlier everything is still very much at an exploratory
>> stage. Once everything is stable it'll be fully documented. If you want to
>> build everything in ome/docker you can run something like:
>>
>> for docker in $(python graph.py --order)
>> do
>>     docker=$(echo $docker | cut -d: -f1)
>>     cd $docker
>>     failed=0
>>     docker build -t openmicroscopy/$docker
>>     cd ..
>> done
>>
>> graph.py outputs out the dependencies between images. Alternatively if you
>> just want to build one image it should be easy to figure out the
>> dependencies for yourself by checking the Dockerfile FROM lines.
>>
>> There's a lot of stuff in the repo at the moment, some directly related to
>> OMERO, others related to our infrastructure. E.g. omero-in-a-box is an
>> all-in-one image, omero-grid was an early attempt at setting up different
>> OMERO components on separate images.
>>
>> If there's anything else you need to know just ask!
>>
>> Best wishes
>>
>> Simon
>>

>>> Thanks !
>>>
>>> --
>>> Hadrien Mary


More information about the ome-devel mailing list