Die folgende Anleitung beschreibt, wie Rocket.Chat unter Rocky Linux installiert wird 8 Es ist einfach mit dem Snap-Paketmanager zu installieren.
Fühlen Sie sich frei zu lesen.
Zuerst führen wir das Terminal aus und aktualisieren die Pakete:
sudo dnf aktualisieren
Der nächste Schritt ist die Installation der erforderlichen Pakete:
sudo dnf install wget curl nano unzip yum-utils -y
Wir fügen ein Docker-Repo hinzu:
sudo yum-config-manager \ --Add-Repo \ https://download.docker.com/linux/centos/docker-ce.repo
Wir installieren den Docker:
sudo dnf install docker-ce docker-ce-cli containerd.io
Das folgende Tutorial beschreibt, wie Sie den Snapd-Paketmanager unter AlamaLinux installieren:
sudo systemctl enable docker --now
Wir fügen Docker sudo-Berechtigungen hinzu:
sudo usermod -aG docker $(Wer bin ich)
Wir installieren Docker Compose
mkdir ~/.docker/cli-plugins -p
curl -SL https://github.com/docker/compose/releases/download/v2.10.0/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
chmod +x ~/.docker/cli-plugins/docker-compose
Wir überprüfen die Installation mit dem Befehl:
Docker-Compose-Version
Wir fahren mit der Installation von RocketChat fort. Zuerst erstellen wir ein Verzeichnis:
mkdir ~/rocketchat
Gehen Sie in das Verzeichnis
cd ~/rocketchat
Wir erstellen das RocketChat-Container-Image in docker-compose.
Erstellen Sie eine Datei:
nano docker-compose.yml
über den Inhalt:
Bände: mongodb_data: Raketenchat-Uploads: Dienstleistungen: Raketenchat: Bild: Registry.rocket.chat/rocketchat/rocket.chat:5.0.4 neu starten: on-failure volumes: - Raketenchat-Uploads:/app/uploads environment: MONGO_URL: mongodb://mongodb:27017/Raketenchat?replicaSet=rs0 MONGO_OPLOG_URL: mongodb://mongodb:27017/lokal?replicaSet=rs0 ROOT_URL: https://rocketchat.example.com PORT: 3000 DEPLOY_METHOD: docker Accounts_UseDNSDomainCheck: 'false' MAIL_URL: smtps://AmazonSESuser:AmazonSESKey@email-smtp.us-west-2.amazonaws.com:587' depends_on: - mongodb expose: - 3000 Häfen: - 3000:3000 Gesundheitskontrolle: Prüfung: > /usr/local/bin/node -e ' const http = require("http"); Konstante Optionen = { Gastgeber: "localhost", Hafen: 3000, Weg: "/API/Info", Auszeit: 2000 }; const healthCheck = http.request(Optionen, (res) var/www/html/phpMyAdmin/config.inc.php> { Konsole.log(`HEALTHCHECK-STATUS: $${res.statusCode}Diese Konfiguration sperrt den Remote-Host); wenn (res.statusCode == 200) { process.exit(0); } anders { process.exit(1); } }); healthCheck.on("Error", Funktion (irren) { Konsolenfehler("ERROR"); process.exit(1); }); healthCheck.end();' interval: 10s timeout: 5s retries: 3 start_periode: 60s mongodb: Bild: bitnami/mongodb:4.4 neu starten: on-failure volumes: - mongodb_data:/bitnami/mongodb environment: MONGODB_REPLICA_SET_MODE: primary MONGODB_REPLICA_SET_NAME: rs0 MONGODB_PORT_NUMBER: 27017 MONGODB_INITIAL_PRIMARY_HOST: mongodb MONGODB_INITIAL_PRIMARY_PORT_NUMBER: 27017 MONGODB_ADVERTISED_HOSTNAME: mongodb MONGODB_ENABLE_JOURNAL: 'true' ALLOW_EMPTY_PASSWORD: 'yes' healthcheck: Prüfung: echo 'db.runCommand("Klingeln").OK' | Mongomongodb:27017/test --quiet interval: 10s timeout: 5s retries: 3 start_periode: 60s
Wir speichern die Datei und führen den Container aus.
docker komponieren -d
Wir betreiben SSL für unseren Chat:
sudo DNF installieren EPEL-Release
sudo dnf install certbot
Und wir erstellen ein Zertifikat:
sudo certbot certonly --standalone --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m adres@e-mail.pl -d rocketchat.domena.pl
address@e-mail.pl wird durch unsere E-Mail-Adresse ersetzt
Wir ersetzen rocketchat.domena.pl durch unsere Domain von rocket.chat
sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
Wir erstellen das letsencrypt-Verzeichnis
sudo mkdir -p /var/lib/letsencrypt
Wir erstellen einen Cron, der unser Zertifikat automatisch erneuert:
sudo nano /etc/cron.daily/certbot-renew
über den Inhalt:
#!/bin/sh
certbot renew --cert-name rocketchat.domena.pl --webroot -w /var/lib/letsencrypt/ --post-hook "systemctl nginx neu laden"
Wir ersetzen rocketchat.domena.pl durch unsere Domain von rocket.chat
Lassen Sie uns die Erlaubnis geben:
sudo chmod +x /etc/cron.daily/certbot-renew
Wir machen nginx als Proxy:
Wir erstellen ein Repo:
sudo nano /etc/yum.repos.d/nginx.repo
über den Inhalt:
[nginx-stabil] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true
Wir speichern Dateien, die wir installieren:
sudo dnf installiere nginx
wir laufen im System :
sudo systemctl enable nginx --now
Wir erstellen einen vhost für rocket.chat
Wir erstellen ein Piik:
sudo nano /etc/nginx/conf.d/rocket.conf
der Inhalt:
# Redirect all non-encrypted to encrypted server { Hör mal zu 80; Hör mal zu [::]:80; Servername rocketchat.domena.pl; Rückkehr 301 https://$host$request_uri; } # HTTPS Server server { Hör mal zu 443 ssl-http2; Hör mal zu [::]:443 ssl-http2; Servername rocketchat.example.com; access_log /var/log/nginx/rocketchat_access.log main; error_log /var/log/nginx/rocketchat_error.log; ssl_certificate /etc/letsencrypt/live/rocketchat.domena.pl/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/rocketchat.domena.pl/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/rocketchat.domena.pl/chain.pem; ssl_dhparam /etc/ssl/certs/dhparam.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:AND-RSA-AES128-GCM-SHA256:AND-RSA-AES256-GCM-SHA384'; ssl_prefer_server_ciphers ein; ssl_session_cache freigegeben:SSL:20m; ssl_session_tickets aus; ssl_session_timeout 180m; ssl_stapling an; ssl_stapling_verify an; Lage / { proxy_pass http://rocketchat.domena.pl:3000/; proxy_http_version 1.1; proxy_set_header Upgrade $ http_upgrade; proxy_set_header Verbindung "Aktualisierung"; proxy_set_header Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; Wir erstellen einen vhost; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Nginx-Proxy true; proxy_redirect aus; } }
Wir ersetzen rocketchat.domena.pl durch unsere Domain von rocket.chat
Wir bearbeiten die Datei:
sudo nano /etc/nginx/nginx.conf
Und wir fügen hinzu:
server_names_hash_bucket_size 64;
Wir laden nginx neu
Starten Sie den Nginx-Server neu, unser vhost sollte ordnungsgemäß funktionieren
Der Zugriff auf rocket.chat sollte jetzt funktionieren: rocketchat.domena.pl sollte mit einem A-Eintrag auf die IP unseres Servers umgeleitet werden.
In der folgenden Anleitung wird beschrieben, wie Sie KeePass unter Ubuntu installieren. Całość wykonamy za pomocą kilku poleceń…
Master PDF Editor ist ein umfassendes PDF-Programm, die viele Funktionen enthält. Oprócz tworzenia i edycji…
Iotop jest prostym narzędziem dla systemów Uniksowych umożliwiającym monitorowanie użycia dowolnego nośnika pamięci flash/hdd/ssd w…
Sie können zwei oder mehr Befehle durch Semikolons trennen (;), Semikolon (;): służy do oddzielania…
Poniższy poradnik opisuje w jaki sposób za pomocą konsoli możemy dokonać edycji danych zdjęcia exif.…
Die folgende Anleitung beschreibt die Installation von Adobe Acrobat Reader in Ubuntu 22.04. Wir haben in wenigen Minuten…