So installieren Sie dotCMS unter Ubuntu 16.04

DotCMS ist ein Open-Source-Content-Management-System für Unternehmen, das in Java geschrieben wurde. Es enthält fast alle Funktionen, die zum Erstellen einer Website für Ihr Unternehmen erforderlich sind. Es bietet eine RESTful-API zur Integration in andere Dienste wie CRM, mobile Anwendungen und mehr. Es verwendet Elasticsearch für die Echtzeitindizierung von Inhalten und Redis für die Implementierung eines mehrschichtigen Caches.

Voraussetzungen

  • Eine Vultr Ubuntu 16.04-Serverinstanz.
  • Ein Sudo-Benutzer .
  • Ein Domainname zeigte auf den Server.

In diesem Tutorial verwenden wir 192.168.0.1 als öffentliche IP-Adresse und cms.example.com als Domainnamen, der auf die Vultr-Instanz verweist. Stellen Sie sicher, dass alle Vorkommen des Beispieldomänennamens und der öffentlichen IP-Adresse durch die tatsächliche ersetzt werden.

Aktualisieren Sie Ihr Basissystem mithilfe der Anleitung zum Aktualisieren von Ubuntu 16.04 . Fahren Sie nach der Aktualisierung Ihres Systems mit der Installation von Java fort.

Installieren Sie Java

Fügen Sie das Ubuntu-Repository für Oracle Java 8 hinzu.

sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update

Installieren Sie Java.

sudo apt -y install oracle-java8-installer

Sie können die Java-Version überprüfen.

java -version

Sie sehen die folgende Ausgabe.

user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

Legen Sie den Standardpfad für Java fest, indem Sie das folgende Paket installieren.

sudo apt -y install oracle-java8-set-default

Sie können überprüfen, ob dies JAVA_HOMEeingestellt ist.

echo $JAVA_HOME

Sie sollten Folgendes sehen.

user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle

Wenn Sie überhaupt keine Ausgabe sehen, müssen Sie sich von der aktuellen Shell abmelden und erneut anmelden.

Installieren Sie PostgreSQL

Standardmäßig ist dotCMS für die Verwendung des H2-Datenbankmoduls konfiguriert. Das H2-Datenbankmodul ist ein auf Flatfiles basierendes Datenbankmodul. Es wird nicht empfohlen, in der Produktion zu verwenden. In diesem Tutorial verwenden wir den PostgreSQL-Server zum Speichern der dotCMS-Datenbank.

PostgreSQL ist ein objektrelationales Datenbanksystem, das für seine Stabilität und Geschwindigkeit bekannt ist. Das Standard-Ubuntu-Repository enthält eine alte Version von PostgreSQL. Fügen Sie daher das PostgreSQL-Repository hinzu.

echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

Installieren Sie den PostgreSQL-Datenbankserver.

sudo apt -y install postgresql

Starten Sie den PostgreSQL-Server und aktivieren Sie ihn beim Start automatisch.

sudo systemctl start postgresql
sudo systemctl enable postgresql

Ändern Sie das Kennwort für den Standardbenutzer von PostgreSQL.

sudo passwd postgres

Melden Sie sich als PostgreSQL-Benutzer an.

sudo su - postgres

Erstellen Sie einen neuen PostgreSQL-Benutzer für dotCMS.

createuser dotcms 

PostgreSQL bietet die psql Shell zum Ausführen von Abfragen auf dem Datenbankserver. Wechseln Sie zur PostgreSQL-Shell.

psql

Legen Sie ein Kennwort für den neu erstellten Benutzer für die dotCMS-Datenbank fest.

ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';

Ersetzen Sie das Datenbankbenutzerkennwort DBPassword durch ein sicheres Kennwort.

Erstellen Sie eine neue Datenbank für die dotCMS-Installation.

CREATE DATABASE dotcms OWNER dotcms;

Verlasse die psql Shell.

\q

Wechseln Sie zum sudo Benutzer.

exit

Installieren Sie dotCMS

Laden Sie das dotCMS-Archiv herunter.

wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.3.2.tar.gz

Den Link zur neuesten Version der Anwendung finden Sie immer auf der dotCMS-Downloadseite .

Erstellen Sie ein neues Verzeichnis, um die dotCMS-Dateien zu speichern und in dieses zu extrahieren.

sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms

Öffnen Sie die Datenbankkonfigurationsdatei.

cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml

Finde den H2 Block.

<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
 ...

 validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />

Kommentieren Sie den gesamten H2 Abschnitt aus, indem Sie den Kommentarbegrenzer --> vom Anfang des Abschnitts zum Ende des Abschnitts verschieben. Es sollte wie folgt aussehen.

<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
 ...

 validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->

Kommentieren Sie den PostgreSQL-Abschnitt aus, indem Sie das Kommentar-Trennzeichen --> am Ende des Abschnitts entfernen und auf der oberen Umhüllung platzieren POSTGRESQL. Suchen username= und password= ersetzen Sie außerdem die vorhandenen Werte durch den Benutzernamen und das Kennwort Ihres PostgreSQL-Datenbankbenutzers. Wenn Sie einen anderen Datenbanknamen als verwendet haben dotcms, müssen Sie den Datenbanknamen in ändern url=. Nach der Konfiguration sieht der PostgreSQL-Block in der Datei folgendermaßen aus.

<!-- POSTGRESQL -->
<Resource name="jdbc/dotCMSPool" auth="Container"
      type="javax.sql.DataSource"
      factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost/dotcms"
      username="dotcms" password="DBPassword" maxTotal="60" maxIdle="10" maxWaitMillis="60000"
      removeAbandonedOnBorrow="true" removeAbandonedOnMaintenance="true" removeAbandonedTimeout="60" logAbandoned="true"
      timeBetweenEvictionRunsMillis="30000" validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />

Geben Sie die Ausführungsberechtigung für alle ausführbaren Dateien an.

sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh

DotCMS ist jetzt auf Ihrem Server installiert. Führen Sie die folgenden Schritte aus, um die Anwendung sofort auszuführen.

cd /opt/dotcms
sudo bin/startup.sh

Die folgende Ausgabe wird angezeigt, wenn der Server erfolgreich gestartet wurde.

user@vultr:/opt/dotcms$ sudo bin/startup.sh
Using DOTCMS_HOME = /opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT
Using DOTSERVER = dotcms
Using CATALINA_PID = /tmp/dotcms.pid
Using JAVA_OPTS =  -Djava.awt.headless=true -Xverify:none -Dfile.encoding=UTF8 -server -XX:+DisableExplicitGC -XX:MaxMetaspaceSize=512m -Xmx1G -XX:+UseG1GC -javaagent:/opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/byte-buddy-agent-1.6.12.jar -Ddotserver=dotcms
Using CATALINA_BASE:   /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_HOME:   /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_TMPDIR: /opt/dotcms/dotserver/tomcat-8.0.18/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /opt/dotcms/dotserver/tomcat-8.0.18/bin/bootstrap.jar:/opt/dotcms/dotserver/tomcat-8.0.18/bin/tomcat-juli.jar
Using CATALINA_PID:    /tmp/dotcms.pid
Tomcat started.

Mit dem obigen Befehl wird der Tomcat-Webserver gestartet, um die Anwendung am Port bereitzustellen 8080.

Öffnen Sie Ihren Lieblingsbrowser und navigieren Sie zu http://192.168.0.1:8080. Sie werden sehen, dass auf der Anwendung eine Demo-Website ausgeführt wird. Wenn Sie Ihre Website nicht sehen, warten Sie bitte, da der erste Start des dotCMS-Servers fünf bis zehn Minuten dauert, da er Daten in die PostgreSQL-Datenbank schreibt und den Cache erstellt. Sie können auch die Startprotokolle überprüfen.

tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log

Konfigurieren Sie Systemd

Der dotCMS-Server kann direkt mit dem im Installationspaket enthaltenen Startskript gestartet werden. Aus praktischen Gründen sollten Sie eine Systemd-Einheitendatei für den dotCMS-Server einrichten. Dadurch wird sichergestellt, dass der Anwendungsserver beim Neustart des Systems und bei Fehlern automatisch gestartet wird.

Stoppen Sie den laufenden dotCMS-Server mithilfe des Shutdown-Skripts.

sudo bin/shutdown.sh

Erstellen Sie aus Sicherheitsgründen einen nicht privilegierten Benutzer zum Ausführen des dotCMS-Servers.

sudo adduser --home /opt/dotcms -gecos "dotCMS User" --disabled-password --disabled-login dotcms

Stellen Sie dem dotCMS-Benutzer das Eigentum an den Dateien zur Verfügung.

sudo chown -R dotcms:dotcms /opt/dotcms

Erstellen Sie einen neuen Systemd-Dienst.

sudo nano /etc/systemd/system/dotcms.service

Füllen Sie die Datei.

[Unit]
Description=dotCMS service
After=syslog.target network.target

[Service]
Type=forking
ExecStart=/opt/dotcms/bin/startup.sh
ExecStop=/opt/dotcms/bin/shutdown.sh
User=dotcms
Group=dotcms
Restart=always

[Install]
WantedBy=multi-user.target

Starten Sie die Anwendung und aktivieren Sie sie, um beim Start automatisch gestartet zu werden.

sudo systemctl start dotcms
sudo systemctl enable dotcms

Stellen Sie sicher, dass der Dienst ausgeführt wird.

sudo systemctl status dotcms

Konfigurieren Sie den Reverse Proxy

Standardmäßig überwacht der dotCMS-Server den Port 8080. Wir werden Nginx als Reverse-Proxy konfigurieren, damit über den Standard HTTP und die HTTPS Ports auf die Anwendung zugegriffen werden kann . Wir werden Nginx auch so konfigurieren, dass es das mit Let's Encrypt generierte SSL verwendet.

Installieren Sie Nginx.

sudo apt -y install nginx

Starten Sie Nginx und aktivieren Sie es, um es beim Booten automatisch zu starten.

sudo systemctl start nginx
sudo systemctl enable nginx

Fügen Sie das Certbot-Repository hinzu.

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

Installieren Sie Certbot, die Clientanwendung für Let's Encrypt CA.

sudo apt -y install certbot

Hinweis: Um Zertifikate von Let's Encrypt CA zu erhalten, muss die Domäne, für die die Zertifikate generiert werden sollen, auf den Server gerichtet sein. Wenn nicht, nehmen Sie die erforderlichen Änderungen an den DNS-Einträgen der Domäne vor und warten Sie, bis sich der DNS verbreitet hat, bevor Sie die Zertifikatanforderung erneut stellen. Certbot überprüft die Domänenautorität, bevor die Zertifikate bereitgestellt werden.

Generieren Sie die SSL-Zertifikate.

sudo certbot certonly --webroot -w /var/www/html -d cms.example.com

Die generierten Zertifikate werden wahrscheinlich in gespeichert /etc/letsencrypt/live/cms.example.com/. Lassen Sie uns Zertifikate verschlüsseln, die in 90 Tagen ablaufen. Daher wird empfohlen, die automatische Erneuerung der Zertifikate mithilfe von Cron-Jobs einzurichten.

Öffnen Sie die Cron-Jobdatei.

sudo crontab -e

Fügen Sie am Ende der Datei die folgende Zeile hinzu.

30 5 * * * /usr/bin/certbot renew --quiet

Der oben genannte Cron-Job wird jeden Tag um 5:30 Uhr ausgeführt. Wenn das Zertifikat abläuft, wird es automatisch erneuert.

Erstellen Sie eine neue Serverblockdatei für die dotCMS-Site.

sudo nano /etc/nginx/sites-available/dotcms

Füllen Sie die Datei.

server {
    listen 80;
    server_name cms.example.com;
    return 301 https://$host$request_uri;
}

server {
    listen 443;
    server_name cms.example.com;

    ssl_certificate           /etc/letsencrypt/live/cms.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/cms.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log            /var/log/nginx/dotcms.access.log;

    location / {

      proxy_set_header        Host $host;
      proxy_set_header        X-Real-IP $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header        X-Forwarded-Proto $scheme;

      proxy_pass          http://localhost:8080;
      proxy_read_timeout  90;

      proxy_redirect      http://localhost:8080 https://cms.example.com;
    }
  }

Aktivieren Sie die Konfiguration.

sudo ln -s /etc/nginx/sites-available/dotcms /etc/nginx/sites-enabled/dotcms

Starten Sie den Nginx-Webserver neu, damit die Änderungen wirksam werden.

sudo systemctl restart nginx

Die dotCMS-Anwendung ist jetzt für die Produktion auf Ihrem Server installiert. Greifen Sie unter der folgenden Adresse auf das administrative Dashboard zu.

https://cms.example.com/dotAdmin

Melden Sie sich mit dem ursprünglichen Administratorkonto [email protected] und dem Kennwort an admin. Ändern Sie das Standardkennwort sofort nach der Anmeldung.

Herzlichen Glückwunsch, das dotCMS Content Management System ist jetzt auf Ihrem Server installiert. Sie können die Demo-Site ändern oder Ihre Site von Grund auf neu erstellen.



Leave a Comment

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.