Deploying the Application
Note that this chapter only focuses on Platform applications deployed on a single machine Docker environment and does not apply to bare metal or cloud deployments.
It describes the architecture and deployment key points, but does not cover networking, rights management nor system administration.
In order to achieve a deployment, you need:
-
A machine compatible with Docker. For more details, please refer to Chapter Meeting the Platform Requirements.
-
Docker images of your application available on a (private) Docker registry.
-
Network access to the (private) Docker registry, the Platform registry and all the external resources (such as LDAP or ERP).
The following diagram describes the development and deployment workflow.
Development and Deployment Workflow

We assume that the development phase is already done and that the Platform version is previously finalized with all the artifacts built and available.
The following architecture diagram is standard and might be adapted to your needs.
Standard Docker Architecture

In this architecture diagram, we can see that the environment needs access to external resources like the Platform Docker registry and your enterprise Docker registry. Your enterprise registry can be public or private: this has no impact on the deployment, but the target deployment machine will need network access to it.
Depending on your needs and your target architecture, you may want to put in place, for example:
-
Some external storage system to secure your application data.
-
A directory system to easily give access to the application for your users.
-
A data integration system that gives access to your business data to the application.
We can also see that a deployed platform application consists mainly of configuration and data files with micro services deployed as running Docker containers.
The application also generates log files to facilitate the exploitation of the application.
At the end of the process, users will access the application through a service gateway (often it is a reverse proxy). You will have many environments depending on the topology of your deployments and your organization. We recommend at least to have so-called integration, acceptance testing and production environments.
The following sections covers:
-
Copying the necessary files on the target machine;
-
Configuring the environment variables;
-
Configuring, if need be, the allowed Origins for WebSocket notifications; and
-
Starting the Docker containers.