Preparation

Please make sure that the required network connectivity between the applications and components is guaranteed. 

Gentics CMS

For installation of Gentics CMS in a Linux enviroment please refer to the Gentics CMS Install Guide

Gentics Mesh Content Repository

As described in the administration guide, Gentics Mesh does not need a dedicated installation procedure.

To make sure Gentics Mesh is started automatically it is usually started as a systemd service. Assuming the Gentics Mesh JAR file is located in /opt/mesh/ the respective service[1] file will look similar to this:

mesh.service
[Unit]
Description=Gentics Mesh
Wants=basic.target
After=basic.target network.target syslog.target

[Service]
User=node
Restart=on-failure
ExecStart=/usr/bin/java -Xms1500m -Xmx1500m -XX:MaxDirectMemorySize=212m -Dstorage.diskCache.bufferSize=212 -jar mesh-server.jar [1]
WorkingDirectory=/opt/mesh
LimitMEMLOCK=infinity
LimitNOFILE=65536
LimitAS=infinity
LimitRSS=infinity
LimitCORE=infinity

[Install]
WantedBy=multi-user.target
 [1] The actual filename of the Gentics Mesh JAR file can vary.

Gentics Portal | php

Gentics Portal | php requires a proper web server environment with PHP support. Please check the requirements at Requirements / tool configuration.

Consult the Demo installation steps, which should be similar or extended by the projects. 

Gentics Portal | java

Gentics Portal | java is also typically started as a systemd service, and the directory structure will look similar to this:

/opt/portal/
  config/ [1]
  templates/ [2]
  queries/ [3]
  waitForMesh.sh [4]
  portal.jar
[1] Configuration files for the portal, logging, caching, etc.
[2] The Handlebars templates.
[3] Project specific GraphQL queries.
[4] A script that makes sure Gentics Mesh is available before the portal actually starts​[2].

In the mentioned setup, this would be the service file for the portal​[3]

[Unit]
Description=Gentics Portal java
Wants=basic.target
After=basic.target network.target syslog.target mesh.service [3]

[Service]
User=node
Restart=on-failure
ExecStartPre=./waitForMesh.sh localhost:8080 200 [1]
ExecStart=/usr/bin/java -Xmx512m -jar portal.jar [2]
WorkingDirectory=/opt/porta
LimitMEMLOCK=infinity
LimitNOFILE=65536
LimitAS=infinity
LimitRSS=infinity
LimitCORE=infinity

[Install]
WantedBy=multi-user.target
[1] The Gentics Mesh service must be started before the portal.
[2] Wait up to 200 seconds for Mesh to be available before starting the portal.
[3] The actual filename of the portal JAR may vary.

Both services can then be enabled with the systemctl enable command:

$ sudo systemctl enable /opt/mesh/mesh.service
$ sudo systemctl enable /opt/portal/portal.service

1. An example file is available here: mesh.service.
2. The script is available here: waitForMesh.sh.
3. An example file is available here: portal.service