Container Images

Managing container images is an essential feature for instance administrators. It allows importing, configuring, and assigning images to container providers (Swarm or Kubernetes) in order to provide ready-to-use working environments for organizations.

Overview of Images

The list of available images is accessible through the Images menu. Each imported image appears with its status, type, and configuration.

../../_static/images/instance/images/instance_images_list.png

List of container images.


Important

When an image is imported, it is disabled by default (Disabled) and must be explicitly enabled before it can be used. This default state allows you to modify it according to your needs before activating it.

Import and Export of Images

Images can be exported and imported. This feature makes it possible to back up and reuse the complete configuration of an image on another instance or in another context.

  • Export: generates a JSON file containing all image information, including variables.

  • Import: reloads an image from a previously exported JSON.

../../_static/images/instance/images/instance_images_import.png

Container image import window.

Image Configuration

The profile of an image groups all its information: registry reference, state, type, creation and update dates.

../../_static/images/instance/images/instance_images_profile.png

Detailed profile of a container image.

Configuration Variables

Variables make it possible to customize the container’s behavior. They serve two main roles:

  1. Environment variables: injected directly into the container at startup.

  2. Dynamic form: define the fields in the configuration form of container profiles on the organization side. Organization administrators can then configure options (text fields, checkboxes, dropdown lists, etc.) defined in advance by the instance administrator.

Important

  • Only variables marked as editable appear in the configuration form on the organization side.

  • Other variables are hidden from organization administrators and transmitted internally to the container.

../../_static/images/instance/images/instance_images_template_variable.png

Variable configuration and associated properties.


Tip

UI Priority: Each variable has a display priority. The higher the value, the higher the field appears in the options form. This allows organizing the options in a specific and logical order.

Options

Type

The template type. Different types have different purposes: some are designed to be configurable via profiles, others are static.

  • STRING: text

  • BOOLEAN: true/false (checkbox)

  • SELECT: dropdown menu

  • SELECT_OPTION: dropdown option

  • SECRET: Docker Swarm secret

  • HOST: adds an entry to the container’s /etc/hosts file

Name

The variable name displayed in a profile.

Variable

The environment variable name that will be sent to the container (-e option in the Docker command line).

Editable

Makes this variable editable by organization admin accounts.

UI Priority

Allows organizing the fields of a profile. The higher the UI priority, the higher the field appears in the profile. Also used to order SELECT_OPTION values, where the highest value appears first in the list.

Hint

Explanatory text displayed under the template field in a profile.

Place Holder

Placeholder text displayed in grey in a text field to give an example without filling it in.

Default Value

The default value when creating a profile.

Condition Variable + Condition Operator + Condition Value

Allows applying a condition on the use of a template based on the value of another template and an operator. For example, if you want the field TEMPLATE_1 to appear only if TEMPLATE_2 == true, you can configure TEMPLATE_1 as:

Condition Variable: TEMPLATE_2
Condition Operator: EQUAL
Condition Value: true

Examples

  • Name: Home Page

  • Type: STRING

  • Variable: REEMO_HOME

  • Editable: true

  • UI Priority: 1000

  • Default Value: https://reemo.io

This field appears at the top of a profile, is called Home Page, has default value https://reemo.io, and sets the environment variable REEMO_HOME in the container.


  • Name: REEMO_NO_PROXY

  • Type: STRING

  • Variable: REEMO_NO_PROXY

  • Editable: false

  • Default value: true

  • Condition: REEMO_PROXY EQUAL NONE

This field does not appear in a profile because it is not editable, but sets the environment variable REEMO_NO_PROXY=true if REEMO_PROXY == NONE.


  • Name: REEMO_NO_PROXY (again)

  • Type: STRING

  • Variable: REEMO_NO_PROXY

  • Editable: false

  • Default value: true

  • Condition: REEMO_PROXY EQUAL EXTERNAL

This field also does not appear in a profile but sets the environment variable REEMO_NO_PROXY=true if REEMO_PROXY == EXTERNAL.


  • Name: Embedded Proxy

  • Type: SELECT_OPTION

  • Variable: REEMO_PROXY

  • Value: EMBEDDED

  • UI Priority: 9

This is an option of the REEMO_PROXY dropdown. It appears second in the list because its priority value is between 8 and 10 of the other two options. If selected, it sets REEMO_PROXY=EMBEDDED.

Assigning to a Provider

An image must be assigned to a container provider (Swarm or Kubernetes) to be usable. The provider is responsible for deploying containers based on this image, also considering placement constraints.

../../_static/images/instance/images/instance_images_providers.png

List of providers associated with an image.


During assignment, you define:

  • Provider: target infrastructure (Swarm/Kubernetes).

  • State: Enabled or Disabled.

  • Visibility: Public (usable by all organizations) or Private.

../../_static/images/instance/images/instance_images_assign_provider.png

Window for assigning an image to a provider.

Private Container Image Association

A Container Image can be defined as Public or Private:

  • Public: automatically available to all organizations.

  • Private: must be explicitly associated with authorized organizations.

This makes it easy to share common images (Public) or reserve specific environments for certain organizations (Private).

Managing Associations

From the Images section of an organization, it is possible to associate a Private Container Image available on a Container Provider.

../../_static/images/instance/images/instance_orga_images_assigned_list.png

List of container images associated with an organization.

Note

When an image is private, it will not be visible to organizations until it has been assigned.

Adding a Private Container Image

To associate a Private Container Image with an organization:

  1. Click Add private image.

  2. Select the corresponding Provider.

  3. Choose the Image to associate.

  4. Save the association.

../../_static/images/instance/images/instance_orga_images_assign.png

Window for associating a private container image.

Best Practices Summary

  • Always manually enable an image after import to make it available.

  • Use export/import to share or back up the full configuration of an image.

  • Create editable variables to provide flexibility to organization administrators, and reserve static variables for technical parameters.

  • Use the UI Priority field to logically order options in the form.

  • Assign each image to a provider to make its execution possible.

  • Use image links to model complex multi-container environments.

  • Public container images are accessible to all organizations.

  • Private container images require explicit association.