ORIGAM Docker Installation Requirements

These should be the steps on how to install ORIGAM platform.

There should be a GitHub repository with an ORIGAM project repository template. So when creating the project it will not be necessary to create a blank repository.

Final behavior

The final way on how to run ORIGAM will be:

  • git clone https://github.com/origam/origam-template myfolder
  • cd myfolder
  • docker compose up

That should be it. On the first run the following should happen:

  • Database server should be started
  • ORIGAM composer should do whatever is needed to initialize the environment
  • ORIGAM Architect should be started
  • ORIGAM Backend should be started
  • Any other services we add in the future should be initialized/started

Configuration

When anything else than default installation is required by the user (e.g. starting a different database engine, naming a database, specifying a different user name/password for a database or initial ORIGAM user, etc.), there should be a place for this in the configuration file. This configuration file should be mounted by the user when starting compose up as an additional command line argument.

If the user will need a custom docker build, they will modify the DOCKERFILE accordingly and will rebuild the docker compose.

DOCKERFILE Contents

The contents of the project repository template should be:

  • model folder (currently it can include Root packages, until we solve another way)
  • DOCKERFILEfile with a default way on how to create an ORIGAM installation
  • configuration file that will override default config

The services included and started using docker compose should be:

  • PostgreSQL
  • ORIGAM Composer (initializing everything when run for the first time, for any other executions it should not do anything, maybe it could be responsible for updates)
  • ORIGAM Architect
  • ORIGAM Backend
  • In the future possibly: Apache Superset, Discourse

Updates

We should care about how updates will work. So when the user will download e.g. ORIGAM v2026-01 and will need to upgrade to v2026-05, the upgrade should be straightforward. The best would be:

  • User will specify a new docker image version base (probably in the DOCKERFILE)
  • Will rebuild the docker compose
  • On next run ORIGAM Composer will detect a version change and will do any upgrades automatically (e.g. upgrading model, installing new root packages, upgrading a database)