Sign inSign up

sagait/openshare-engine

By sagait

•Updated 2 days ago

OpenShare Engine — Open Integration Engine, bare image, no bundled plugins

Image
0

626

sagait/openshare-engine repository overview

⁠OpenShare Engine

The OpenShare distribution of Open Integration Engine⁠ (the community continuation of Mirth Connect), built by Saga Healthcare IT⁠ from the signed OpenShare engine releases. It powers the OpenShare⁠ healthcare data gateway: HL7v2, FHIR, and DICOM integration with dcm4che5 DICOM support.

This image ships the bare engine only — no plugins are bundled. Add plugins per deployment through the custom-extensions volume (see below). If you want the upstream engine with the community plugin set pre-installed, use sagait/engine⁠ instead.

⁠Tags

  • latest, latest-ubuntu, latest-ubuntu-jre — Ubuntu, Java 21 JRE (recommended)
  • latest-ubuntu-jdk — Ubuntu, Java 21 JDK
  • <version>-ubuntu, <version>-ubuntu-jre, <version>-ubuntu-jdk — pinned to an OpenShare engine release, e.g. 4.7.0-1-ubuntu

<version> is the OpenShare engine release (openshare-v4.7.0-1 → 4.7.0-1). Pin a version in anything you run unattended; latest moves with each release. Images are linux/amd64.

⁠Quick start

docker run --name openshare-engine -d -p 8443:8443 sagait/openshare-engine:latest

Then open https://localhost:8443 (the Administrator) or point the OpenShare console at the engine. Data lives in /opt/engine/appdata; mount a volume there to keep it across container replacements:

docker run --name openshare-engine -d -p 8443:8443 \
  -v openshare-appdata:/opt/engine/appdata \
  sagait/openshare-engine:4.7.0-1-ubuntu

⁠Signing in

There is no admin/admin default. On the first start with an empty /opt/engine/appdata, the engine creates its embedded database, generates a password for the admin user and prints it to the container log. Once curl -ks -H 'X-Requested-With: OpenAPI' https://localhost:8443/api/server/version returns the version, find the password with:

docker logs openshare-engine 2>&1 | grep 'Initial admin password is'

To choose the password yourself, set _MP_SERVER_INITIALADMINPASSWORD on the first start:

docker run --name openshare-engine -d -p 8443:8443 \
  -v openshare-appdata:/opt/engine/appdata \
  -e _MP_SERVER_INITIALADMINPASSWORD='choose-a-strong-password' \
  sagait/openshare-engine:4.7.0-1-ubuntu

Either way, the password is set only when a new database is created. The embedded database lives in the appdata volume, so restarting the container, or starting a new one on the same volume, keeps the existing password: no new one is generated and _MP_SERVER_INITIALADMINPASSWORD is ignored. A new container without that volume starts a new database with a new password. Sign in as admin, and change the password at first sign-in if the engine asks you to.

⁠Installing plugins

Mount a directory of plugin ZIPs at /opt/engine/custom-extensions; every ZIP there is installed at startup. This is how the OpenShare gateway plugin (admin-console.zip, downloaded from your OpenShare console) is delivered:

docker run --name openshare-engine -d -p 8443:8443 \
  -v openshare-appdata:/opt/engine/appdata \
  -v /path/to/plugins:/opt/engine/custom-extensions:ro \
  sagait/openshare-engine:4.7.0-1-ubuntu

Replace the ZIP and restart the container to upgrade a plugin. The engine loads an extension only when its plugin.xml declares an exact match for the engine version, and skips incompatible ones with a message in the engine log rather than failing loudly.

⁠Configuration

Configuration is identical to sagait/engine⁠: environment variables map onto mirth.properties (DATABASE, DATABASE_URL, DATABASE_USERNAME, DATABASE_PASSWORD, KEYSTORE_STOREPASS, KEYSTORE_KEYPASS, SESSION_STORE, VMOPTIONS, SERVER_ID, …), any other property can be set with the _MP_ prefix (_MP_SERVER_API_ALLOWHTTP=true sets server.api.allowhttp), and secrets such as database.password can be supplied in a mirth_properties Docker secret instead of environment variables. See that image's README for the full reference; the entrypoint is the same.

Example with an external PostgreSQL database:

docker run --name openshare-engine -d -p 8443:8443 \
  -v openshare-appdata:/opt/engine/appdata \
  -e DATABASE=postgres \
  -e DATABASE_URL='jdbc:postgresql://db:5432/engine?sslmode=require' \
  -e DATABASE_USERNAME=engine \
  -e DATABASE_PASSWORD='db-password' \
  -e VMOPTIONS=-Xmx2g \
  sagait/openshare-engine:4.7.0-1-ubuntu

⁠Java

The OpenShare engine requires Java 21 (its launcher accepts 21–25); the image ships Eclipse Temurin 21. If you build your own image on another base, an older JVM fails at startup with exit code 83.

⁠Source

Engine: SagaHealthcareIT/open-integration-engine⁠, branch openshare. Each image tag corresponds to the release tag of the same version (image 4.7.0-1-ubuntu is built from tag openshare-v4.7.0-1). OpenShare Engine is Saga IT's build of the Open Integration Engine⁠ and is licensed under the MPL 2.0; the modified source is published there.

Image build: SagaHealthcareIT/engine-docker⁠ (saga-it branch, deploy/compose.openshare.yaml).

Tag summary

Content type

Image

Digest

sha256:32e66fcf8…

Size

349 MB

Last updated

2 days ago

docker pull sagait/openshare-engine