Hi Developers,

Often we create and edit InterSystems IRIS Interoperability solutions via a set of UI tools that is provided with IRIS. But it is sometimes difficult to setup the development environment to handle changes we make in the UI to source control.

This video illustrates how git-source-control helps with source control Interoperability components while changing it in the UI.

Git Source Control for InterSystems IRIS Interoperability with Docker and VSCode

https://www.youtube.com/embed/QIb2ksEXdHk?controls=0
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

3 0
2 504

Hey Community,

Tired of entering login-password during the docker build with your InterSystems IRIS every time?

There is a handy way to turn it on and off – use the passwordless zpm module.

Watch this video to explore how to use the passwordless ipm module to turn on and off entering login-password during docker build with your InterSystems IRIS:

⏯️ Passwordless mode for development with InterSystems IRIS

https://www.youtube.com/embed/ygIJsTMO0Gw?controls=0
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

1 0
0 331

To prepare a migration to IRIS I use Docker images.
The (aged) application is built around Caché Terminal
And on Windows, IRIS uses the same ctelnetd.exe as Caché.

In my Docker installation, Telnet Settings are just grayed out in SMP.
and my Terminal can't 'connect.
Port mapping is OK and verified with TCP

Working from the console in Docker with the whole set of ESC and
screen formatting is not acceptable.
We tried WebTerminal but there is just no Partition behind as in Terminal.

2 4
0 211

iris-docker-multi-stage-script

A python script to keep your docker iris images in shape ;)

Witout changing your dockerfile or your code you can reduce the size of your image by 50% or more !

TL;DR

Name the builder image builder and the final image final and add this to end of your Dockerfile:

Modify your Dockerfile to use a multi-stage build:

ARG IMAGE=intersystemsdc/irishealth-community:latest
FROM $IMAGE as builder

Add this to end of your Dockerfile:

FROM $IMAGE as final

ADD --chown=${ISC_PACKAGE_MGRUSER}:${ISC_PACKAGE_IRISGROUP} https://github.com/grongierisc/iris-docker-multi-stage-script/releases/latest/download/copy-data.py /irisdev/app/copy-data.py

RUN --mount=type=bind,source=/,target=/builder/root,from=builder \
    cp -f /builder/root/usr/irissys/iris.cpf /usr/irissys/iris.cpf && \
    python3 /irisdev/app/copy-data.py -c /usr/irissys/iris.cpf -d /builder/root/ 

Boom! You're done!

12 8
7 566

I asked the question in email and get answers from those colleagus.

Question:

I failed to change time zone on latest iris container(Ubuntu), because:

  • I am irisowner, no root password

  • There is no sudo command

I used to use below Dockfile setting to change time zone while creating a new docker image. However, those commands doesn’t work from non-root user.

2 1
0 209

Hi Developers,

Enjoy watching the new video on InterSystems Developers YouTube:

Real-World CI/CD: Keep Calm & Build On @ Global Summit 2022

https://www.youtube.com/embed/EcaJETVJ6eg
[This is an embedded link, but you cannot view embedded content directly on the site because you have declined the cookies necessary to access it. To view embedded content, you would need to accept all cookies in your Cookies Settings]

0 0
1 260
Article
· Feb 24, 2023 2m read
InterSystems IRIS in Containers

InterSystems has also released IRIS as containerized deployments. This post is to demonstrate how InterSystems IRIS and applications those rely on IRIS a backend can be packaged into an image and be run in other machines in containers and how simple it is to do that.

A container runs image/s which have all the necessary executables, binary code, libraries, and configuration files. And the images can be moved from one machine to another, and an images repository like Docker Hub can simplify that process.

I have used an application from Open Exchange for this demo.

5 2
3 349

Dear community members!

A very common problem of our users is to use an external database as data source in an IRIS production. As many of you already know, we have two ways to connect directly to an external database, the first one is using an ODBC connection, the second is using JDBC.

In our example we are going to create a connection using JDBC, and we are going to build a simple Docker's project, in this way you will be able to modify the example as you wish.

1 0
0 322

Hi, I would like to tell you how easy it is to spin up IRIS for Health docker container in compute engine(VPS) in google cloud.

I know that to run IRIS for Health in AWS is pretty simple and straightforward, but I wanted to tried if its same easy in GCP environment.

Create vm instance. 2GB RAM is more than enough.

I used Debian 11 as Linux distro.

Standart persistent disk is cheaper.

6 0
1 550

Hi developers!

Those who code IRIS solutions in VSCode using Docker often use the convenient ObjectScript menu, which contains links to Management Portal, Class Reference, Unittest portal, Productions, etc.

While drilling down to a Dev Container to code Embedded Python there is no such option, at least within my settings:

So I don't know how to connect to it.

Thoughts?

0 6
0 247

I have installed Iris in Docker container with the above version. I need to create an additional user to log in via ssh. I have created a user and put in both the irisuser and irisowner groups, and created a user in iris with permissions. But, when I run "iris session iris" I originally got an error about permissions: /usr/irissys/bin/irisdb: Permission denied.

I looked @ the /usr/irisys directory and the permissions was only (r-x------). I changed to (dr-xr-xr-x.)and now I get a different error:

Invalid ownership for ./irisdb

Any suggestions?

0 8
0 336

Hi folks!

We have a bunch of templates on OEX that provide a handy foundation for building a particular application with IRIS. And the basic principle of each and every template is that we take vanilla IRIS images, load code, and files into the image using Dockerfile, and create a new docker image as a solution. And then we develop running this image and rebuilding it when returning to development.

Some developers ask me why we need to build the docker image to work with the code. Indeed, if at the end of the day I need to develop a ZPM package and not a docker image why don't run the vanilla image and load the code and everything in it?

The problem I have with the building image approach is that often I can wait a lot to build an image and it fails on some Objectscript problem in the source that I cannot fix as the image is not building. and

Any thoughts? How do you develop with docker?

1 4
1 325
Discussion
· Sep 22, 2022
Testing MergeCPF feature

For quite some time InterSystems IRIS supports such thing as Merging CPF. So, with help of this it should be possible to define only desired changes in configuration. And get them applied even with vanilla Docker image.

And I though it could be useful when used with Dockerfile. Use this way to configure IRIS during docker build instead of using Installer manifest.

2 8
0 374

Hi developers!

Here is the score of technical bonuses for participants' applications in the InterSystems Interoperability Contest: Building Sustainable Solutions 2022!

0 7
0 180

Hello everyone, I’m a French student that just arrived in Prague for an academical exchange for my fifth year of engineering school and here is my participation in the interop contest.

I hadn’t much time to code since I was moving from France to Prague and I’m participating alone, so I decided to make a project that’s more like a template rather than an application.

4 4
0 277

Hi,

I have a problem when starting the docker container that the collation is standard US

sample:

docker run --name iris1 -d --publish 1972:1972 --publish 52773:52773 containers.intersystems.com/intersystems/iris-community:2022.1.0.209.0 --check-caps false

After the installation I like to import existing classes and globals but it failed due to an collation error

We usually use DEUW = German3

0 3
0 161