So installieren Sie das Cachet Status Page System auf Ubuntu 18.04 LTS
Gütesiegelist ein schönes und leistungsstarkes Open-Source-Statusseiten-System in PHP, das es Ihnen ermöglicht, Ausfallzeiten und Systemausfälle besser an Ihre Kunden, Teams und Aktionäre zu kommunizieren. Die Anwendung bietet Ihnen viele Funktionen, von denen die wichtigsten sind: eine leistungsstarke JSON-API, Ereignisberichte, Metriken, Abschriftenunterstützung für Ereignisnachrichten, Abonnentenbenachrichtigungen per E-Mail, Zwei-Faktor-Authentifizierung. In diesem Tutorial werden wir das Cachet-Statusseiten-System unter Verwendung von PHP, Nginx, MySQL und Composer auf Ubuntu 18.04 LTS installieren.
Anforderungen
- PHP Version 7.1 oder höher
- HTTP-Server mit PHP-Unterstützung (z.B.: Nginx, Apache, Caddy)
- Komponist
- Eine unterstützte Datenbank: MySQL, PostgreSQL oder SQLite
- Git
Voraussetzungen
- Ein Ubuntu 18.04 LTS-Betriebssystem.
- Ein Nicht-Root-Benutzer mit sudo-Rechten.
Erste Schritte
Überprüfen Sie Ihre Ubuntu-Version:
lsb_release -ds
# Ubuntu 18.04.1 LTS
Richten Sie die Zeitzone ein:
sudo dpkg-reconfigure tzdata
Aktualisieren Sie Ihre Betriebssystempakete (Software). Dies ist ein wichtiger erster Schritt, denn es stellt sicher, dass Sie die neuesten Updates und Sicherheitsfixes für die Standardsoftwarepakete Ihres Betriebssystems erhalten:
sudo apt update && sudo apt upgrade -y
Installieren Sie einige wichtige Pakete, die für die grundlegende Verwaltung des Ubuntu-Betriebssystems erforderlich sind:
sudo apt install -y curl wget vim git unzip socat bash-completion
Schritt 1 – PHP installieren
Installieren Sie PHP sowie die notwendigen PHP-Erweiterungen:
sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-xml php7.2-gd php7.2-zip php7.2-mbstring php7.2-mysql php7.2-pgsql php7.2-sqlite3 php7.2-opcache php-apcu
Um PHP, das in Modulen kompiliert ist, anzuzeigen, können Sie ausführen:
php -m< ctype curl exif fileinfo . . . . . ./code>
Überprüfen Sie die PHP-Version:
php --version
# PHP 7.2.10-0ubuntu0.18.04.1 (cli) (built: Sep 13 2018 13:45:02) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.10-0ubuntu0.18.04.1, Copyright (c) 1999-2018, by Zend Technologies
Der PHP-FPM-Dienst wird beim Neustart auf dem Ubuntu 18.04-System automatisch gestartet und aktiviert, so dass es nicht notwendig ist, ihn manuell zu starten und zu aktivieren, sondern zum nächsten Schritt, nämlich der Datenbankinstallation und -einrichtung.
Schritt 2 – MySQL installieren und eine Datenbank für Cachet erstellen
Cachet unterstützt MySQL, MariaDB, PostgreSQL und SQLite Datenbanken. In diesem Tutorial verwenden wir MySQL als Datenbankserver.
Installieren Sie den MySQL-Datenbankserver:
sudo apt install -y mysql-server
Überprüfen Sie die MySQL-Version:
mysql --version
# mysql Ver 14.14 Distrib 5.7.25, for Linux (x86_64) using EditLine wrapper
Laufenmysql_secure installation
Skript zur Verbesserung der MySQL-Sicherheit und zur Festlegung des Passworts für MySQLroot
Benutzer:
sudo mysql_secure_installation
Beantworten Sie jede der Fragen:
Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Verbinden Sie sich mit der MySQL-Shell als root-Benutzer:
sudo mysql -u root -p
# Enter password
Erstellen Sie eine leere MySQL-Datenbank und einen leeren Benutzer für Cachet und merken Sie sich die Anmeldeinformationen:
mysql> CREATE DATABASE dbname;
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
Beenden von MySQL:
mysql> exit
Ersetzen Sie,dbname
undusername
durch Ihre eigenenpassword
Namen.
Schritt 3 – Installieren Sie den Acme.sh-Client und erhalten Sie Let’s Encrypt Zertifikat (optional).
Die Sicherung Ihrer Website mit HTTPS ist nicht notwendig, aber es ist eine gute Vorgehensweise, um den Traffic Ihrer Website zu sichern. Um das TLS-Zertifikat von Let’s Encrypt zu erhalten, verwenden wir den acme.sh-Client. Acme.sh ist eine reine UNIX-Shell-Software zum Erhalten von TLS-Zertifikaten von Let’s Encrypt ohne Abhängigkeiten.
Laden Sie acme.sh herunter und installieren Sie es:
sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail your_email@example.com
source ~/.bashrc
cd ~
Überprüfen Sie die Version von acme.sh:
acme.sh --version
# v2.8.0
Besorgen Sie sich RSA- und ECC/ECDSA-Zertifikate für Ihre Domain/Hostname:
# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256
Wenn Sie gefälschte Zertifikate zum Testen benötigen, können Sie die Option--staging
Flagge zu den obigen Befehlen.
Nachdem Sie die obigen Befehle ausgeführt haben, sind Ihre Zertifikate und Schlüssel in:
- Für RSA:
/home/username/example.com
Verzeichnis. - Für ECC/ECDSA:
/home/username/example.com_ecc
Verzeichnis.
Um Ihre ausgestellten Zertifikate aufzulisten, können Sie diese ausführen:
acme.sh --list
Erstellen Sie ein Verzeichnis, um Ihre Zertifikate zu speichern. Wir werden das/etc/letsencrypt
Verzeichnis verwenden.
mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc
Zertifikate installieren/kopieren nach/etc/letsencryptVerzeichnis.
# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
Alle Zertifikate werden automatisch alle 60 Tage erneuert.
Nach Erhalt der Zertifikate verlassen Sie das Formular root user und kehren Sie zum normalen sudo user zurück:
exit
Schritt 4 – Installation und Konfiguration von NGINX
Cachet kann mit vielen Webservern gut funktionieren. Wenn Sie den Apache-Webserver gegenüber Nginx bevorzugen, besuchen Sie https://docs.cachethq.io/docs/installing-cachet#section-running-cachet-on-apache, um mehr zu erfahren.
Installieren Sie Nginx:
sudo apt install -y nginx
Überprüfen Sie die Nginx-Version:
sudo nginx -v
# nginx version: nginx/1.14.0 (Ubuntu)
Konfigurieren Sie Nginx für Cachet, indem Sie es ausführen:
sudo vim /etc/nginx/sites-available/cachet.conf
Und füllen Sie die Datei mit der folgenden Konfiguration:
server {
listen 80;
listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;
server_name status.example.com;
root /var/www/cachet/public;
index index.php;
ssl_certificate /etc/letsencrypt/status.example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/status.example.com/status.example.com.key;
ssl_certificate /etc/letsencrypt/status.example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/status.example.com_ecc/status.example.com.key;
location / {
try_files $uri /index.php$is_args$args;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
fastcgi_keep_conn on;
}
}
Aktivieren Sie die neuecachet.conf
Konfiguration durch Verknüpfen der Datei mit demsites-enabled
Verzeichnis:
sudo ln -s /etc/nginx/sites-available/cachet.conf /etc/nginx/sites-enabled/
Testen Sie die NGINX-Konfiguration:
sudo nginx -t
Nginx neu laden:
sudo systemctl reload nginx.service
Schritt 5 – Composer installieren
Installieren Sie Composer, den PHP-Abhängigkeitsmanager global:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
Überprüfen Sie die Composer-Version:
composer --version
# Composer version 1.8.3 2019-01-30 08:31:33
Schritt 6 – Cachet installieren
Erstellen Sie ein Dokumenten-Stammverzeichnis, in dem sich das Gütesiegel befinden soll:
sudo mkdir -p /var/www/cachet
Ändern Sie den Besitzer des/var/www/cachet
Verzeichnisses auf {.jour_user}
:
sudo chown -R {your_user}:{your_user} /var/www/cachet
HINWEIS: Ersetzen Sie { durchjour_user}
Ihren ursprünglich erstellten Nicht-Root-Benutzernamen.
Navigieren Sie zum Stammverzeichnis des Dokuments:
cd /var/www/cachet
Laden Sie den Cachet-Quellcode mit Git herunter:
git clone -b 2.4 --single-branch https://github.com/cachethq/Cachet.git .
Kopieren.env.example
zu.env
Datei und Konfiguration der Datenbank undAPP_URL
Einstellungen in.env
Datei:
cp .env.example .env
vim .env
Cachet-Abhängigkeiten mit dem Composer installieren:
composer install --no-dev -o
Richten Sie den Anwendungsschlüssel durch Ausführen ein:
php artisan key:generate
Installieren Sie Cachet:
php artisan cachet:install
Wechseln Sie den Eigentümer des/var/www/cachet
Verzeichnis zuwww-data:
sudo chown -R www-data:www-data /var/www/cachet
Öffnen Sie Ihre Website in einem Webbrowser und folgen Sie den Anweisungen auf dem Bildschirm, um die Installation von Cachet abzuschließen.
Schritt 7 – Vervollständigen Sie das Cachet-Setup.
Wählen Sie Cache- und Sitzungs-Treiber aus und konfigurieren Sie die Mail-Optionen:
Konfigurieren Sie allgemeine Site-Einstellungen wie Site-Name, Site-Domain, Zeitzone und Sprache:
Erstellen Sie ein administratives Benutzerkonto:
Danach sollten Sie eine Meldung erhalten, dass Cachet erfolgreich konfiguriert wurde. Sie können das Cachet Dashboard öffnen, indem Sie auf die Schaltfläche „Gehe zum Dashboard“ klicken:
Um auf das Cachet Dashboard zuzugreifen, geben Sie
die URL Ihrer/dashboard
Website an.