Deploy with containers
Itential provides pre-built OCI-compliant images of Platform 6 hosted on the Itential Docker registry. Containers are well-suited for development environments and teams using Docker-based workflows.
Containerization offers the following advantages over a traditional server deployment:
This guide covers Docker. Detailed instructions for Docker Compose and Kubernetes fall outside its scope. Example Docker Compose files are available in the Itential open source repository.
Before you begin
Container runtime
Platform images are compliant with Open Container Initiative (OCI) specifications. This guide assumes Docker as the container runtime.
Registry access
Platform images are hosted on the Itential Docker registry. Contact your Itential Account Manager to obtain:
- Access key ID
- Secret access key
- Bundle name
AWS CLI
The AWS Command Line Interface (AWS CLI) must be installed on your host OS to authenticate with the Itential registry.
Log in to the registry
Authenticate with the Itential Docker registry before pulling or running images.
Replace <access_key_id> and <secret_access_key> with the credentials provided by your Itential Account Manager.
Pull a Platform image
Replace <bundle_name> with your bundle name and <tag> with the desired Platform version, for example 6.0.2.
Referencing a feature release tag such as 6.0.0 pulls the latest maintenance build of that version, which may change over time. In production environments, always pin to a specific maintenance release tag such as 6.0.2.
Start a container
The minimum required configuration is an encryption key. Pass it using the -e flag.
For information on generating an encryption key, see Install Platform 6.
Configure with environment variables
All Platform configuration properties can be set using environment variables with the ITENTIAL_ prefix. Pass each variable using the -e flag.
For the full list of available properties and their environment variable equivalents, see Platform properties reference.
Generate an encrypted value
To generate an encrypted value from inside the container — for example, to store a password in encrypted form — run:
Replace <password_value> with the plaintext value to encrypt.
Common configuration tasks
Persist logs to the host
By default, container logs are lost when a container and its volumes are removed. To persist logs, mount a host directory into the container.
Add SSH keys and certificates
Add adapters and custom applications
Run multiple containers for high availability
Multiple Platform containers can run together to provide high availability. Each container must:
- Be bound to a unique host port
- Connect to the same MongoDB and Redis instance
The following example starts two Platform containers sharing external MongoDB and Redis: