Unverified Commit a2f13bbe authored by Mohamed Boussaa's avatar Mohamed Boussaa Committed by GitHub
Browse files

Update Docker Compose doc (#742)

* Update Docker Compose doc

* Typos

* Typos: MySQL and PostgreSQL
parent c1288b9d
......@@ -154,22 +154,24 @@ Your ProActive Scheduler is ready to execute <<_glossary_job,*Jobs*>>!
ProActive could be easily deployed and started within a fully containerized environment. For this purpose, we provide a ready-to-use Docker Compose configuration that enables you running ProActive Workflows and Scheduling as a containerized service.
It starts the following services:
* Proactive server container
* Proactive node container
* Proactive database container (Postgres or Mysql). The database container is not started when using our embedded HSQL database.
* ProActive Server container
* ProActive Node container
* ProActive Database container (PostgreSQL or MySQL). The Database container is not started when using our embedded HSQL Database.
The Docker Compose configuration pulls the Proactive server, node, and database images from the https://dockerhub.activeeon.com/[Private Activeeon Docker Registry^].
The Docker Compose configuration pulls the ProActive server, Node, and Database images from the https://dockerhub.activeeon.com/[Private Activeeon Docker Registry^].
These images can be used out of the box, on any operating system. You can customize the server, nodes, and database settings, located in the `.env` file according to your requirements.
These images can be used out of the box, on any operating system. You can customize the server, Nodes, and Database settings, located in the `.env` file according to your requirements.
To be able to access the https://dockerhub.activeeon.com/[Private Activeeon Docker Registry^], you need to have credentials.
To be able to access the https://dockerhub.activeeon.com/[Private Activeeon Docker Registry^], a ProActive enterprise licence and access credentials are required.
Please contact us at contact@activeeon.com to request access.
In the following, we describe the installation steps you need to follow in order to have Proactive running in a fully containerized environment.
Here are the installation steps you need to follow in order to have ProActive running in a fully containerized environment:
You need first to create and configure the Docker compose configuration file `.env` to include the following content:
===== 1. Configure the environment
===== Docker compose configuration file: `.env`
You need first to create and configure the Docker Compose environment file `.env`.
====== Set up the Docker Compose configuration file: `.env`
[source]
----
......@@ -179,11 +181,11 @@ HOST_ADDRESS=XX.XX.XX.XX
HOST_OS_MAC=off
# Release version, it could be 'trial' or 'enterprise'
RELEASE=enterprise
# Proactive version to be deployed
# ProActive version to be deployed
PROACTIVE_VERSION=11.1.0
# Protocol to use for accessing Web apps deployed by the proactive server
# Protocol to use for accessing Web apps deployed by the ProActive server
PROTOCOL=https
# Port to use for accessing Web apps deployed by the proactive server
# Port to use for accessing Web apps deployed by the ProActive server
PORT=8443
# Remove history older than (in days), 30 days by default
JOB_CLEANUP_DAYS=30
......@@ -194,11 +196,11 @@ USER_NAME=activeeon
GROUP_NAME=activeeon
# Required to run docker in docker on Linux, look at /etc/group or run 'getent group docker | cut -d: -f3' to get the host docker gid
DOCKER_GID=115
# Number of ProActive nodes to start on the server machine
# Number of ProActive Nodes to start on the server machine
PROACTIVE_WORKER_NODES=7
# Proactive admin password
# ProActive admin password
PROACTIVE_ADMIN_PASSWORD=activeeon
# External proactive db credentials, used only for postgres and mysql compose configurations
# External ProActive db credentials, used only for PostgreSQL and MySQL compose configurations
POSTGRES_PASSWORD=change_me
MYSQL_ROOT_PASSWORD=change_me
DB_RM_PASS=change_me
......@@ -209,14 +211,17 @@ DB_NOTIFICATION_PASS=change_me
----
Once, you create and configure the `.env` file, you can select one of the three following Docker Compose configurations to start the Proactive server and node containers.
For instance, we currently provide support to three database systems, namely HSQLDB, Postgres, and MySQL.
===== 2. Define and configure ProActive containers
Once you create and configure the `.env` file, you can select one of the three following Docker Compose configurations to start the ProActive server and Node containers with the desired database.
We currently provide support for three Database systems, namely HSQLDB, PostgreSQL, and MySQL.
The following Docker Compose configuration could be used to run the Proactive server container with an embedded HSQL Database.
It will start up two containers, one for the server and one for the nodes.
===== Proactive using embedded HSQL Database: `docker-compose-hsqldb.yml`
====== Set up ProActive using embedded HSQL Database: `docker-compose-hsqldb.yml`
This Docker Compose configuration could be used to run the ProActive server container with an embedded HSQL Database.
It will start up to two containers, one for the server and one for the Nodes.
[source]
----
......@@ -278,10 +283,13 @@ networks:
pa-network:
----
The following Docker Compose configuration could be used to run Proactive container with an external Postgres Database container.
It will start up three containers, one for the server, one for the nodes, and one for the database.
===== Proactive using Postgres Database: `docker-compose-postgres.yml`
====== Set up ProActive using PostgreSQL Database: `docker-compose-postgres.yml`
This Docker Compose configuration could be used to run the ProActive server container with an external PostgreSQL Database container.
It will start up to three containers, one for the server, one for the Nodes, and one for the Database.
[source]
----
version: '2.1'
......@@ -365,10 +373,12 @@ networks:
pa-network:
----
The following Docker Compose configuration could be used to run Proactive container with an external MySQL Database container.
It will start up three containers, one for the server, one for the nodes, and one for the database.
===== Proactive using MySQL Database: `docker-compose-mysql.yml`
====== Set up ProActive using MySQL Database: `docker-compose-mysql.yml`
This Docker Compose configuration could be used to run the ProActive server container with an external MySQL Database container.
It will start up to three containers, one for the server, one for the Nodes, and one for the Database.
[source]
----
version: '2.1'
......@@ -454,35 +464,35 @@ networks:
pa-network:
----
===== Start Proactive using Docker Compose
===== 3. Start ProActive using Docker Compose
Login into the Private Activeeon Registry
----
$ docker login dockerhub.activeeon.com
----
Start Proactive container with a default HSQL Database:
Start ProActive container with a default HSQL Database:
----
$ docker-compose -f docker-compose-hsqldb.yml up -d
----
Start Proactive container with a Postgres database and node containers:
Start ProActive container with a PostgreSQL Database and Node containers:
----
$ docker-compose -f docker-compose-postgres.yml up -d
----
Start Proactive container with a MySQL database and node containers:
Start ProActive container with a MySQL Database and Node containers:
----
$ docker-compose -f docker-compose-mysql.yml up -d
----
You should wait for the node container to start up to make sure that the server, database and nodes are up.
You should wait for the Node container to start up to make sure that the server, Database and Nodes are up.
----
$ docker logs -f proactive-node
----
When all nodes are up, ProActive Web Portals are available at http://<PUBLIC-IP>:<PORT>/. The `<PUBLIC-IP>` and `<PORT>` are specified in the `.env` file.
When all Nodes are up, ProActive Web Portals are available at `<PROTOCOL>://<PUBLIC-IP>:<PORT>/`. The `<PROTOCOL>`, `<PUBLIC-IP>`, and `<PORT>` are specified in the `.env` file.
The user can access to any of the four portals using the default credentials: admin/`<PROACTIVE_ADMIN_PASSWORD>`. `PROACTIVE_ADMIN_PASSWORD` is, by default, `activeeon` but you can customize it in the `.env` file.
The user can access any of the four portals using the default credentials: `admin/<PROACTIVE_ADMIN_PASSWORD>`. `PROACTIVE_ADMIN_PASSWORD` is, by default, `activeeon` but you can customize it as well in the `.env` file.
Your ProActive Scheduler is now running as a set of container services!
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment