1 Pre Requirements
- System Requirements
- All commands have to be executed using the root user.
- Make sure the locale en_US.UTF-8 is generated
- Make sure your timezone is correctly set (eg. to CET)
- Make sure Java 17 is installed on the system. Installation commands differ depending on the operating system (see the compatibility list for details on supported operating systems).
1.1 Download the package
Download the Gentics CMS JAR from our Maven repository:
- OSS version: https://repo.gentics.com/service/rest/repository/browse/maven/com/gentics/cms-oss/cms-oss-server/
- Enterprise version: https://repo.gentics.com/service/rest/repository/browse/maven/com/gentics/cms/cms-server/
Access to the repository for the Enterprise version requires credentials. Please contact your account manager for details.
Save the JAR file under /cms.
1.2 Create service
1.2.1 Create node user
Concrete commands may vary depending on the operating system, but the following examples should work on most Linux based operating systems. The examples assume that they are executed as the root
user. When executed with another user prefixing all commands with sudo
might be necessary.
- Create group for
node
user:groupadd node
- Create
node
user, add tonode
group and assign home directory/cms
:useradd -m -d /cms -g node node
- (Optional) Set password for
node
user:passwd node
Create the systemd service file:
[Unit] Description=Gentics CMS Wants=basic.target After=basic.target network.target syslog.target [Service] User=node Restart=on-failure # Replace "YOUR_LICENSE_KEY" in the following line with your actual license key. Environment="LICENSEKEY=YOUR_LICENSE_KEY" # Only one of the two following lines may be uncommented. This example assumes that the enterprise version is used, adapt the following two lines if the OSS version should be used instead. # ExecStart=java -Duser.dir=/cms -Dcom.gentics.contentnode.config.files=cms -cp cms-oss-server.jar com.gentics.contentnode.server.Runner ExecStart=java -Duser.dir=/cms -Dcom.gentics.contentnode.config.files=cms -cp cms-server.jar com.gentics.contentnode.server.Runner WorkingDirectory=/cms LimitMEMLOCK=infinity LimitNOFILE=65536 LimitAS=infinity LimitRSS=infinity LimitCORE=infinity [Install] WantedBy=multi-user.target
The license key can alternatively also be set by storing the key in /cms/keys/license.key
.
Create the configuration .yml files under /cms/conf/cms and activate the service with
1.2.2 Database configuration
The configuration for the database access should be put in /cms/conf/cms/db.yml:
db: settings: user: "node_cms" password: "PASSWORD_FOR_USER node_cms" # The following setting are only necessary if the database server is not running on the same host as the CMS. host: "DATABASE_HOST"
Make sure that the DB configuration file is only readable by the node
user.
Alternatively the database configuration can also be set via environment variables. See Environment variables for details.
# systemctl enable /cms/cms.service
1.3 Database server
Please install a compatible MySQL Server on your system. We suggest a installation of MariaDB on the same server that will host Gentics CMS.
The following mysql permissions are needed.
mysql> GRANT usage ON *.* to node_cms@HOSTNAME; mysql> GRANT super ON *.* to node_cms@HOSTNAME; mysql> GRANT all ON node_utf8.* to node_cms@HOSTNAME; mysql> GRANT all ON node_utf8_cr.* to node_cms@HOSTNAME; mysql> GRANT all ON node_utf8_todo.* to node_cms@HOSTNAME;
The following mysql custom settings are mandatory. (MariaDB / MySQL 5.7)
[mysqld] innodb_flush_log_at_trx_commit = 2 character-set-server = utf8mb4 character_set_client = utf8 character-set-filesystem = utf8 sql_mode = "" innodb = FORCE default-storage-engine = InnoDB max_allowed_packet = 256M collation_server = utf8_general_ci [client] default-character-set = utf8
2 Reverse proxy configuration
Once started the CMS is reachable under http://localhost:8080. To make it reachable under a certain domain, the web server (e.g. Apache or Nginx) must be configured to use a reverse proxy to forward requests for the CMS to localhost:8080.
3 Migration
See the migration guide for information about migrating from CMP 7.x to CMP 8.×.
3.1 Final recommendations and suggestions
It is mandatory to adjust the memory settings for your installation. Not doing so can lead to performance issues.
It’s considered best practice to use hyphens (-) instead of underscores (_) in URL’s. For new installations you should add these settings to your configuration.
3.2 Resetting the database
The database of the Gentics CMS can by reset anytime by dropping & recreating the database:
mysql> DROP database node_utf8; mysql> CREATE database node_utf8;
The database structure will be recreated during the next startup of Gentics CMS.