Omero Server on AWS Fargate

Hi there,

I’ve been looking into deploying Omero Server on AWS Fargate and now have a working prototype. It’s working pretty well. The only thing that I didn’t manage to figure out yet, is whether there is a ‘containery’ way to handle cases where the documentation says to use the CLI.

E.g. I uploaded some test images with OMERO.insight using the ‘root’ user, but I now want to change the owner of the files to ‘user1’. I checked the documentation and that is possible with the CLI:
https://docs.openmicroscopy.org/omero/5.4.10/users/cli/chown.html

However, from a previous post it is clear that only one copy of OMERO.server can be running at once. That precludes running a separate task to perform the CLI command.

Since Fargate doesn’t allow to run some equivalent of ‘docker exec -it container-name /bin/bash’, would it be safe to assume that the recommended solution would be to allow SSH access to the container and handle things that way? Or is there API access to most commands which would allow doing these tasks by REST call?

Thanks in advance,

Jon

1 Like

Hmmm… that sounds like a slight misunderstanding and/or a failure on our part to provide a dedicated omero-cli-docker. If you change the entrypoint for the omero-server-docker to “/opt/omero/server/OMERO.server/bin/omero” then you will have a CLI client.

Definitely. The OMERO.cli uses the same API that OMERO.insight and OMERO.web use. For example:

docker run --rm --entrypoint=/opt/omero/server/OMERO.server/bin/omero openmicroscopy/omero-server login USERNAME@HOST -w PASSWORD

though I don’t have an experience with DNS resolution in Fargate to know what value you will want to use for HOST here.

If this CLI usage doesn’t get you want you need, you could create your own image and copy in your own script:

FROM openmicroscopy/omero-server
COPY chown.sh /tmp/chown.sh
...

but again, you will still need to know how to connect to the server container.

Hope that helps,
~Josh.

Josh. That’s awesome! Thanks for the detailed reply. The instructions were exactly what I needed. I could run a local docker container that connects to the load balancer that provides a fixed IP/DNS for the OmeroServer Fargate container.

I guess it would also be possible to setup the container to do this in Fargate directly, which would be handy when Docker is not installed for admins to use. But the image is relatively large so it’s not as convenient as having the local copy.

1 Like