RocketChat.Server
Rocket.Chat

Installiere Rocket.Chat, die beste Open Source-Webchat-Plattform, mit Ansible!
Hinweise
master
wurde aufv2.0
umgestellt und ist jetzt der aktuellste Code der Rolle (anstatt der kompatiblen Version 1.9). Wenn du die neuste Version willst, lasse einfach die Versionsangabe weg undansible-galaxy
zieht die neueste Version oder du kannstversion: master
angeben, um immer die aktuellste Version zu erhalten.- Nutzer von
v1.9
können weiterhin die Tagsv1.9
undv1.9.0
verwenden, und es bleibt einansible_1.9
Branch, obwohl es dort wenig oder keine Rückportierungen geben wird.
Funktionen
Optionaler vollständiger Stack-Betrieb: Installiere Rocket.Chat vollständig, einschließlich MongoDB & einem Nginx Reverse-SSL-Proxy. Oder, installiere Rocket.Chat und integriere es mit deinem bestehenden MongoDB und/oder Nginx Systemen/Methoden.
Optionale automatische SSL-Zertifikatserstellung: Generiere automatisch SSL-Zertifikate für HTTPS-Verbindungen über einen Nginx Reverse-Proxy. Oder, benutze deine eigenen SSL-Zertifikate!
Optionale automatische Updates [erfordert Ansible 2.0]: Wenn eine neue Version von Rocket.Chat veröffentlicht wird, oder falls du Entwicklungen zu Testzwecken folgen möchtest, aktualisiere einfach
rocket_chat_version
auf die gewünschte Version (siehe die Rocket.Chat Versionsseite), setzerocket_chat_automatic_upgrades
auftrue
und lasse die Rolle den Rest erledigen! Wenn es eine Änderung im Code gibt, der auf deinem Rocket.Chat Server bereitgestellt wird, kümmert sich diese Rolle um das Upgrade und die Neueinbindung des Rocket.Chat Dienstes, während deine Daten intakt bleiben. Hinweis: Diese Funktionalität benötigt Ansible 2.0. Siehe, wie man die Version 2.0 dieser Rolle in dem Abschnitt Installiere die Ansible 2.0-Version dieser Rolle erhält.
Unterstützte Plattformen
Debian
- Strect (9)
- Buster (10)
Ubuntu
- Bionic Beaver: 18.04 LTS
- Xenial: 16.04 LTS
- Trusty: 14.04 LTS
EL (RHEL/CentOS)
- 7
Wenn du möchtest, dass deine Distribution/dein Betriebssystem unterstützt wird, melde ein Problem!
Probleme?
Bitte stelle sicher, dass du die FAQ und alle Dokumentationen gelesen hast, bevor du ein Problem meldest.
Rollenvariablen
Alle Variablen haben sinnvoll gesetzte Standardwerte in defaults/main.yml
.
Standardwerte
Name | Standardwert | Beschreibung |
---|---|---|
rocket_chat_automatic_upgrades |
false | Ein boolescher Wert, der angibt, ob Rocket.Chat bei Quellcodeänderungen aktualisiert werden soll |
rocket_chat_upgrade_backup |
true | Ein boolescher Wert, der angibt, ob die aktuelle Rocket.Chat-Version beim Upgrade gesichert werden soll |
rocket_chat_upgrade_backup_path |
"{{ rocket_chat_application_path }}" |
Der Pfad, um das Backup von Rocket.Chat zu speichern, wenn rocket_chat_upgrade_backup auf true gesetzt ist |
rocket_chat_application_path |
/var/lib/rocket.chat |
Der Zielpfad auf dem Dateisystem für die Installation von Rocket.Chat |
rocket_chat_version |
latest |
Die Version von Rocket.Chat, die installiert werden soll; siehe die Rocket.Chat Versionsseite für verfügbare Optionen |
... (weitere Variablen folgen) ... |
Installiere diese Rolle von Ansible Galaxy
Diese Rolle kann von Ansible Galaxy heruntergeladen werden.
Um diese Rolle zu installieren und in deinem Ansible-Code zu verfolgen, nutze etwas Ähnliches in deiner requirements.yml
:
- src: RocketChat.Server
version: v1.9.0
path: roles/external/
Hinweis: Du musst version
als v1.9.0
angeben, wenn du immer noch Ansible 1.9.4 verwendest.
Installiere die Ansible 2.0-Version dieser Rolle
Mit der Veröffentlichung von Ansible 2.0 wird diese Rolle offiziell unterstützt mit einigen Leistungsverbesserungen und zusätzlichen Funktionen (automatische Updates zum Beispiel).
Um die Ansible 2.0-Version dieser Rolle zu verwenden, kannst du sie mit dem ansible-galaxy
Befehl und einer requirements.yml
(wie oben erwähnt) installieren, um die gewünschte Version anzugeben.
Hier ist ein Beispiel für eine requirements.yml
, um die Ansible 2.0 Version zu installieren:
- src: RocketChat.Server
path: roles/external
Hinweis: master
wurde auf v2.0 umgestellt und ist nun der aktuellste Code der Rolle. Wenn du die neueste Version willst, lasse die Versionsangabe weg und ansible-galaxy
zieht den neuesten Tag, oder du kannst version: master
angeben, um immer aktuell zu sein.
Beispiel-Playbook
Ein einfaches Playbook, um diese Rolle auf allen chat_servers
Systemen auszuführen:
- hosts: chat_servers
roles:
- RocketChat.Server
Ein Playbook, um Rocket.Chat auf chat_servers
zu installieren, aber die Installation von MongoDB auszuschließen und eine externe Instanz zu verwenden. Außerdem automatische Updates von Rocket.Chat zuzulassen (Ansible 2.0 erforderlich für rocket_chat_automatic_upgrades
! Siehe den Abschnitt Installiere die Ansible 2.0-Version dieser Rolle):
- hosts: chat_servers
vars:
rocket_chat_automatic_upgrades: true
rocket_chat_include_mongodb: false
rocket_chat_mongodb_server: 10.19.3.24
roles:
- RocketChat.Server
FAQ
- Wenn ich versuche, mit dieser Rolle zu installieren, schlägt es bei der Aufgabe
Fetch the Rocket.Chat binary tarball
fehl Wenn die Installation mit einer Fehlermeldung fehlschlägt, die ähnlich klingt, ist dies, weil die Rolle noch nicht aktualisiert wurde, um den SHA256-Hash der neuesten Rocket.Chat-Version zu berücksichtigen.
TASK [RocketChat.Server : Fetch the Rocket.Chat binary tarball] ****************
fatal: [chat1]: FAILED! => {"changed": false, "failed": true, "msg": "Die Prüfziffer für /var/lib/rocket.chat/rocket.chat-latest.tgz stimmte nicht überein; sie war 21ef5ee220671e5f514f240d1423514c5780d81d6ffba8720d19660079099925."}
Im Moment ist die Pflege dieser Variablen ein manueller Prozess. Du kannst diesen Wert einfach selbst festlegen; durch host_vars
, group_vars
, vars
in deinem Playbook oder mit -e
beim Ausführen von ansible-playbook
, usw.
Verfügbare Tags
Um eine spezifische Gruppe von Spielen auszuführen, verwende die --tags
-Option. Die verfügbaren Tags sind:
vars
build
mongodb
repo
nginx
upgrade
service
Verwaltung des Rocket.Chat-Dienstes
Diese Rolle wird einen Dienst namens rocketchat
bereitstellen.
Du kannst dein lokales Dienstverwaltungssystem verwenden, um den Dienst zu starten, zu stoppen, neu zu laden oder neu zu starten.
Testen über Vagrant
Um diese Rolle zu testen, findest du eine Vagrantfile
und eine provision.yml
Playbook im tests/
Verzeichnis.
Dies ist, wie du dir vielleicht gedacht hast, um Testinstallationen über Vagrant auszuführen.
Wenn du Änderungen testen oder einfach sehen möchtest, wie die Rolle funktioniert/einen kleinen Rocket.Chat-Server lokal bereitstellen möchtest, kannst du in das tests/
Verzeichnis wechseln und vagrant up
ausführen (vorausgesetzt, du hast Vagrant & VirtualBox installiert).
Wenn du dir die Vagrantfile
ansiehst, siehst du, dass es eine Bereitstellung für jede aktuell unterstützte Plattform gibt – kommentiere einfach die aus, die du nicht bereitstellen möchtest (vergiss nicht die Ansible-Konfiguration am Ende!).
Sobald die Bereitstellung abgeschlossen ist, kannst du Rocket.Chat ausprobieren, indem du http://localhost:4000
in deinem Browser aufrufst (der Port 4000
kann hier variieren, je nachdem, welche Plattform du bereitstellst, sieh dir den Wert forwarded_port
für deine Plattform an).
TODO
- Verwende Let's Encrypt für SSL
Lizenz
MIT
Probleme/Beiträge
Fühle dich frei: Ein Problem melden Beitragen
ansible-galaxy install RocketChat.Server