OHDSI Home | Forums | Wiki | Github

Can you run Docker containers?

There are lots of conversation in OHDSI on using Docker. Docker containers would be a nice way to package complex software like HADES. Custom study packages (like LegendT2dm) could even get their own Docker image.

However, some institutions (like mine) have technical and / or organizational hurdles preventing the deployment of Docker images. I have no idea if we’re the only one, or if this is true for more institution. I would therefore like to use this informal poll to gain some insight. Please answer the poll below for your organization.

  • My organization is willing and able to run Docker containers that can query our patient-level data in the CDM.
  • There are technical or organizational hurdles that would make running Docker containers (that can query the CDM) difficult but not impossible. (For example, each Docker container would require formal security review.)
  • No way could we run Docker containers (that can query the CDM).

0 voters

@msuchard @anthonysena @lee_evans

Although I’m a big fan for using Docker in OHDSI studies, I found that docker doesn’t work in current CDM DB of my institution (Yonsei Univ. Severance hospital). It seems like there is an issue with firewall…

Now, I’m trying to build an environment for legend-dm package by using renv. Still, I believe that docker would be the best solution for my institution since we’re now building AWS-based data analytic system without connection to internet.

Since ‘I’ am willing to ru docker container, and I think(or hope) that my institution is able to run docker container for CDM, I cannot pick one answer in the current survey…

@SCYou , sounds like your answer is “difficult but not impossible”?

We are using Docker for Atlas, WebAPI, and SOLR for better Atlas searching.

From an Atlas deployment perspective, this has been much more efficient than the traditional approach.

1 Like

In my organisation (FinnGen), this was starting to be possible 4-5 months ago.
We work inside restricted intenetless IVMs. Docker had some security issues that would had allow to run as sudo in the host IVM. Than changed recently.

This was in Debian, not sure if this issue affected other OSs.

1 Like

I think Docker will help very much in enviroments with no-internet.
At the moment using renv still needs considerable manuall work. (libraries has to be donload in similar machine with intenet, and then moved to the main, that takes quiet some time)

By the way, you can run Docker images without sudo privileges by using Singularity

https://sylabs.io/guides/2.6/user-guide/singularity_and_docker.html

Has anyone deployed Docker containers remotely via GitLab CI/CD?

not me but fairly common these days since Github actions is a strong competitor for travis.

We use dockerized WebAPI (from dockerhub), Atlas (from dockerhub), Postgres CDM, DQ Dashboard and Achilles in our research network in Germany. We as a site maintain the deployment which means we provide the vocabularies and all other necessities and build an init image which installs the CDM. The WebAPI, Atlas and database are configured via docker compose. The other services are executed by demand. In this way, every other site gets an ready to use deployment without the need of deeper knowledge. Plus, it is done very fast. So far nobody complained about Docker.

4 Likes

Hi @Mirko ,
Thank you. would you mind if I ask you more question about how you did dockerized WebAPI and others in your research network?
Best
Reza

Better yet – post your docker compose files…

Hi @Reza_Baharmand and @mgkahn ,
sure :slight_smile: here you go:
docker-compose.yml.xml (2.1 KB)

Hi @Mirko
Thank you.
I could not open the file, Looks like there is a problem with its contents.
I got error message Incorrect document syntax.
Best
Reza

Strange, did you rename the file to just .yml? It’s only allowed to upload xml files here. May be another problem could be file encoding.

I can confirm I see the file. I only removed the .XML and it worked. Thanks again for sharing

Hi @Mirko ,
:grin:
Thanks
It was my mistake. :wink:
Best
Reza

interested in docker options. perhaps renv and docker should be both available. that said, installing from renv is really a royal pain. we very often have no idea why a package cannot be installed. those error messages are hardly helpful

hi @lychenus13 ,

This is my attempt to integrate renv with Docker.

Room to improve and feedback more than welcome.

t