Evgeny Shvarov · Sep 6, 2019 2m read

Using Package Manager with InterSystems IRIS in Docker Container

Hi Developers!

InterSystems Package Manager (ZPM) is a great thing, but it is even better if you don't need to install it but can use immediately.

There are several ways how to do this and here is one approach of having IRIS container with ZPM built with dockerfile.

I've prepared a repository which has a few lines in dockerfile which perform the download and install the latest version of ZPM. 

Add these lines to your standard dockerfile for IRIS community edition and you will have ZPM installed and ready to use.

To download the latest ZPM client:

RUN mkdir -p /tmp/deps \
 && cd /tmp/deps \
 && wget -q -O zpm.xml

to install ZPM into IRIS:

" Do \$system.OBJ.Load(\"/tmp/deps/zpm.xml\", \"ck\")" \


To try ZPM with this repository do the following:

$ git clone

Build and run the repo:

$ docker-compose up -d
Open IRIS terminal:
$ docker-compose exec iris iris session iris

Call ZPM:

zpm: USER>

Install webterminal

zpm: USER>install webterminal
webterminal]   Reload START
[webterminal]   Reload SUCCESS
[webterminal]   Module object refreshed.
[webterminal]   Validate START
[webterminal]   Validate SUCCESS
[webterminal]   Compile START
[webterminal]   Compile SUCCESS
[webterminal]   Activate START
[webterminal]   Configure START
[webterminal]   Configure SUCCESS
[webterminal]   Activate SUCCESS
zpm: USER>

Use it!

And take a look at the whole process in this gif:


1 1 1 398
Log in or sign up to continue


It turned out, that we don't need a special repository to add ZPM into your docker container.

You just need another dockerfile - like this one. And here is the related docker-compose to make a handy start. 

See how it works: