So installieren Sie Zammad 2.0 unter Ubuntu 16.04 LTS
Verwenden Sie ein anderes System? Zammad ist ein Open-Source-Helpdesk- / Ticketing-System für Kundenserviceteams. Mit Zammad, Kundendienst
Apache OpenMeetings ist eine Open Source-Webkonferenzanwendung. Es ist in Java geschrieben und unterstützt mehrere Datenbankserver. Es bietet viele Funktionen wie Audio- und Videokonferenzen, Bildschirmfreigabe, Datei-Explorer, ein Benutzermoderationssystem, private Nachrichten und Kontakte, einen integrierten Kalender für Besprechungspläne und vieles mehr. Sie können auch eine Konferenzsitzung aufzeichnen. Es bietet eine SOAP / REST-API und mehrere Plugins für die einfache Integration in Moodle, Jira, Joomla, Confluence und mehr.
In diesem Tutorial verwenden wir 192.168.1.1
als öffentliche IP-Adresse und meetings.example.com
als Domainnamen, der auf die Vultr-Instanz verweist. Stellen Sie sicher, dass alle Vorkommen der Beispiel-IP-Adresse und des Domänennamens durch die tatsächliche ersetzt werden.
Aktualisieren Sie Ihr Basissystem mithilfe der Anleitung zum Aktualisieren von CentOS 7 . Fahren Sie nach der Aktualisierung Ihres Systems mit der Installation von Java fort.
OpenMeetings ist in Java geschrieben und erfordert daher Java Runtime Environment (JRE). Laden Sie das neueste verfügbare Oracle SE JDK 8 RPM-Paket herunter, das sowohl JRE als auch JDK enthält.
wget --header 'Cookie: oraclelicense=a' http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.rpm
Installieren Sie das heruntergeladene Paket.
sudo rpm -Uvh jdk-8u161-linux-x64.rpm
Wenn Java erfolgreich installiert wurde, können Sie die 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)
Bevor wir fortfahren können, müssen wir die Variablen JAVA_HOME
und JRE_HOME
umgebungsvariablen einrichten . Finden Sie den absoluten Pfad der ausführbaren JAVA-Datei in Ihrem System.
readlink -f $(which java)
Sie sehen eine ähnliche Ausgabe.
[user@vultr ~]$ readlink -f $(which java)
/usr/java/jdk1.8.0_161/jre/bin/java
Legen Sie nun die Umgebungsvariablen JAVA_HOME
und den JRE_HOME
Umgebungsvariablen entsprechend dem Pfad des Java-Verzeichnisses fest.
echo "export JAVA_HOME=/usr/java/jdk1.8.0_161" >> ~/.bash_profile
echo "export JRE_HOME=/usr/java/jdk1.8.0_161/jre" >> ~/.bash_profile
Führen Sie die bash_profile
Datei aus.
source ~/.bash_profile
Jetzt können Sie den echo $JAVA_HOME
Befehl ausführen, um sicherzustellen, dass die Umgebungsvariable festgelegt ist.
[user@vultr ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_161
Installieren Sie die ImageMagick- und GhostScript-Bibliotheken.
sudo yum -y install epel-release
sudo yum -y install ImageMagick ghostscript
ImageMagick bietet Unterstützung beim Hochladen und Importieren von Bildern in das Whiteboard. Mit GhostScript können Sie PDFs auf das Whiteboard hochladen.
Überprüfen Sie die Version von ImageMagick und GhostScript, um sicherzustellen, dass sie erfolgreich installiert wurden.
[user@vultr ~]$ identify -version
Version: ImageMagick 6.7.8-9 2016-06-16 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP
[user@vultr ~]$ ghostscript -v
GPL Ghostscript 9.07 (2013-02-14)
Copyright (C) 2012 Artifex Software, Inc. All rights reserved.
Außerdem müssen wir entweder Apache OpenOffice oder LibreOffice auf dem System installieren. Installieren einer dieser beiden ermöglicht Openmeetings die Dateien in Office - Dokumentformate zu importieren , wie .doc
, .docx
, .ppt
, .pptx
, oder .xlx
. In diesem Tutorial installieren wir Apache OpenOffice.
Wechseln Sie in das temporäre Verzeichnis und laden Sie das Apache OpenOffice-RPM herunter.
cd /tmp
wget https://downloads.sourceforge.net/project/openofficeorg.mirror/4.1.5/binaries/en-US/Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
Extrahieren Sie das Archiv und installieren Sie alle RPM-Pakete.
tar xf Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_en-US.tar.gz
cd en-US/RPMS
sudo rpm -Uvh *.rpm
sudo rpm -Uvh desktop-integration/openoffice4.1.5-redhat-menus-*.rpm
Geben Sie openoffice4 -h
in die Befehlszeile ein, um zu überprüfen, ob OpenOffice korrekt installiert ist und funktioniert . Es wird seine Version und kurze Hilfe drucken.
[user@vultr ~]$ openoffice4 -h
OpenOffice 4.1.5 415m1(Build:9789)
Usage: soffice [options] [documents...]
Options:
-minimized keep startup bitmap minimized.
...
Installieren Sie das RPMFusion-Repository in Ihrem System, da es vorgefertigte Pakete für FFmpeg und Sound eXchange (SoX) bereitstellt.
sudo rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
Installieren Sie FFmpeg und SoX.
sudo yum -y install ffmpeg sox
FFmpeg und SoX ermöglichen die Aufzeichnung des Meetings. Sie werden auch Hilfe beim Importieren von Mediendateien wie .avi
, .flv
, .mov
und .mp4
in das Whiteboard. Überprüfen Sie die Installation, indem Sie die Versionen von FFmpeg und SoX überprüfen.
[user@vultr ~]$ sox --version
sox: SoX v14.4.1
[user@vultr ~]$ ffmpeg -version
ffmpeg version 2.8.13 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11)
OpenMeetings unterstützt mehrere Arten von Datenbankservern, z. B. MySQL, PostgreSQL, Apache, Derby und Oracle. In diesem Tutorial verwenden wir den PostgreSQL-Server zum Hosten der OpenMeeting-Datenbank.
PostgreSQL ist ein objektrelationales Datenbanksystem, das für seine Stabilität und Geschwindigkeit bekannt ist. Das Standard- yum
Repository enthält eine alte Version von PostgreSQL. Fügen Sie daher das PostgreSQL-Repository für die neueste Version der Anwendung zum System hinzu.
sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm
Installieren Sie den PostgreSQL-Datenbankserver.
sudo yum -y install postgresql10-server postgresql10-contrib postgresql10
Initialisieren Sie die Datenbank.
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Starten Sie den PostgreSQL-Server und aktivieren Sie ihn beim Start automatisch.
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Ä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 den OpenMeetings-Benutzer.
createuser openmeetings
Sie können stattdessen einen beliebigen Benutzernamen verwenden openmeetings
. Wechseln Sie zur PostgreSQL-Shell.
psql
Legen Sie ein Kennwort für den neu erstellten Benutzer für die OpenMeetings-Datenbank fest.
ALTER USER openmeetings WITH ENCRYPTED password 'DBPassword';
Durch DBPassword
ein sicheres Passwort ersetzen . Erstellen Sie eine neue Datenbank für die OpenMeetings-Installation.
CREATE DATABASE openmeetings OWNER openmeetings;
Verlasse die psql
Shell.
\q
Wechseln Sie zum sudo
Benutzer.
exit
Bearbeiten Sie die pg_hba.conf
Datei, um die MD5-basierte Authentifizierung zu aktivieren.
sudo nano /var/lib/pgsql/10/data/pg_hba.conf
Suchen Sie die folgenden Zeilen und ändern Sie die Werte in der METHOD
Spalte von ident
bis md5
.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 ident
# IPv6 local connections:
host all all ::1/128 ident
Nach der Aktualisierung sieht die Konfiguration folgendermaßen aus.
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Speichern Sie die Datei und beenden Sie den Editor. Starten Sie PostgreSQL neu, damit die Änderungen wirksam werden.
sudo systemctl restart postgresql-10
Da alle erforderlichen Abhängigkeiten installiert sind. Erstellen Sie einen neuen Benutzer für OpenMeetings. Die Verwendung eines Nicht-Root-Benutzers zum Ausführen von OpenMeetings wird aus Sicherheitsgründen empfohlen.
sudo adduser -b /var -s /sbin/nologin openmeetings
Der obige Befehl erstellt auch das Home-Verzeichnis des openmeetings
Benutzers in /var/openmeetings
.
Überprüfen Sie die Download-Seite von Apache OpenMeetings , um den Link zur neuesten verfügbaren Version zu erhalten. Laden Sie das OpenMeetings-Archiv herunter.
cd /tmp
wget http://www-us.apache.org/dist/openmeetings/4.0.1/bin/apache-openmeetings-4.0.1.tar.gz
Extrahieren Sie das Archiv in das /var/openmeetings
Verzeichnis.
sudo tar xf apache-openmeetings-4.0.1.tar.gz -C /var/openmeetings
Stellen Sie dem zuvor erstellten OpenMeetings-Benutzer den Besitz der Dateien zur Verfügung.
sudo chown -R openmeetings:openmeetings /var/openmeetings
Bevor wir die Anwendung starten, müssen wir die Firewall ändern, um Ports 5080
und zuzulassen 1935
.
sudo firewall-cmd --zone=public --permanent --add-port=5080/tcp
sudo firewall-cmd --zone=public --permanent --add-port=1935/tcp
sudo firewall-cmd --reload
Sie können jetzt die Anwendung starten.
sudo su -s /bin/bash -c 'cd /var/openmeetings/ && sh red5.sh' openmeetings
Sie können jetzt http://192.168.1.1:5080/openmeetings
in Ihrem bevorzugten Browser darauf zugreifen . Sie sehen den Begrüßungsbildschirm mit Anweisungen zur Installation von GhostScript.
Da wir GhostScript bereits installiert haben, fahren Sie fort. Auf der nächsten Schnittstelle werden Sie aufgefordert, Details zum Datenbankserver anzugeben. Wählen Sie den Datenbanktyp " PostgreSql
" und geben Sie Ihre Datenbankserverdetails an, die Sie während der PostgreSQL-Installation konfiguriert haben.
Klicken Sie auf die Check
Schaltfläche " " und Sie sollten die Nachricht erhalten: " Database check was successful
". Geben Sie in der nächsten Benutzeroberfläche die Details Ihres Administratorkontos und einen Gruppennamen an.
Konfigurieren Sie die Grundeinstellungen Ihrer Installation. B. um die Selbstregistrierung, die E-Mail-Überprüfung und die Standardsprache zu ermöglichen. Geben Sie außerdem Ihre SMTP-Serverdetails an. Wenn Sie keinen SMTP-Server bereit haben, können Sie die SMTP-Details auch später im Administrator-Dashboard bereitstellen.
Sie werden nach dem Pfad zu den Binärdateien verschiedener Anwendungen gefragt. Geben Sie /usr/bin
als Pfad für ImageMagick, FFmpeg und SoX an. Wenn die Anwendung Fehler für den eingegebenen Pfad bereitstellt, können Sie which <binary_name>
den absoluten Pfad zur Binärdatei ermitteln. Zum Beispiel which ffmpeg
sollte Ihnen /usr/bin/ffmpeg
als Ausgabe geben. Verwenden Sie /opt/openoffice4
als Pfad zu den OpenOffice-Binärdateien.
Sie können die Konfiguration auf der nächsten Schnittstelle überspringen, da wir die Standardwerte verwenden werden. Klicken Sie abschließend auf die Finish
Schaltfläche " ", um die Anwendung zu installieren und die Datenbank zu schreiben.
OpenMeetings ist jetzt auf Ihrem Server installiert. Um die Produktion benutzerfreundlicher zu gestalten, richten wir Systemd für die Verwaltung des OpenMeetings-Servers ein. Wir werden Nginx auch mit Let's Encrypt SSL als gesichertem Reverse-Proxy für die Anwendung konfigurieren.
Obwohl wir die Anwendung mit dem obigen Befehl einfach starten und stoppen können, wird empfohlen, eine Systemd-Serviceeinheit zum Verwalten der Anwendung einzurichten. Dadurch wird auch sichergestellt, dass der Dienst beim Booten und bei Fehlern automatisch gestartet wird.
Stoppen Sie den OpenMeetings-Server entweder durch Drücken von " Ctrl+C
" oder durch Beenden der Shell des openmeetings
Benutzers.
sudo pkill -KILL -u openmeetings
Erstellen Sie eine neue Systemd-Einheitendatei für OpenMeetings Server.
sudo nano /etc/systemd/system/openmeetings.service
Füllen Sie die Datei.
[Unit]
Description=OpenMeeting Service
After=network.target
[Service]
Type=simple
User=openmeetings
WorkingDirectory=/var/openmeetings
ExecStart=/var/openmeetings/red5.sh
Restart=always
[Install]
WantedBy=multi-user.target
Starten Sie den OpenMeetings-Server und aktivieren Sie ihn beim Start automatisch.
sudo systemctl start openmeetings
sudo systemctl enable openmeetings
Um den Status des Dienstes zu überprüfen, können Sie Folgendes ausführen.
sudo systemctl status openmeetings
Sie sehen eine ähnliche Ausgabe.
[root@vultr openmeetings]# sudo systemctl status openmeetings
● openmeetings.service - OpenMeeting Service
Loaded: loaded (/etc/systemd/system/openmeetings.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2018-01-31 15:40:56 UTC; 38s ago
Main PID: 10522 (java)
CGroup: /system.slice/openmeetings.service
└─10522 /bin/java -Dred5.root=/var/openmeetings -Djava.security.debug=failure -Xms256m...
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: [INFO] [Loader:/openmeetings] org.red5.server.Serv...ngs
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.431 16603 343 o.a.o.c.r.Scope...se]
Jan 31 15:41:29 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:29.531 16703 124 o.a.o.c.r.Scope...ngs
Jan 31 15:41:34 vultr.guest red5.sh[10522]: DEBUG 01-31 15:41:34.421 21593 82 o.a.o.u.Version ...] -
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # Openmeetings is up ... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # 4.0.1 3795f14 2017-12-05T16... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: # and ready to use ... #
Jan 31 15:41:34 vultr.guest red5.sh[10522]: ##################################################...###
Hint: Some lines were ellipsized, use -l to show in full.
Standardmäßig überwacht OpenMeetings den Port 5080
. Wenn die Verbindung zwischen Browser und Server nicht mit SSL verschlüsselt ist, werden Anmeldungen und andere Informationen im Klartext gesendet. Dies kann eine potenzielle Bedrohung darstellen, da jemand, der das Netzwerk abhört, die Informationen erhalten kann. Um dieses Problem zu beheben, richten wir Nginx als Reverse-Proxy ein, der den Standard-HTTPS-Port überwacht und alle Anforderungen an den OpenMeetings-Server weiterleitet.
Installieren Sie Nginx.
sudo yum -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
Installieren Sie Certbot, die Clientanwendung für Let's Encrypt CA.
sudo yum -y install certbot
Bevor Sie die Zertifikate anfordern können, müssen Sie Ports 80
und / 443
oder Standards HTTP
und HTTPS
Dienste über die Firewall zulassen .
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
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 /usr/share/nginx/html -d meetings.example.com
Die generierten Zertifikate werden wahrscheinlich in gespeichert /etc/letsencrypt/live/meetings.example.com/
. Das SSL-Zertifikat wird als fullchain.pem
und der private Schlüssel als gespeichert privkey.pem
.
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.
Ändern Sie nun die Nginx-Standardkonfigurationsdatei, um die default_server
Zeile zu entfernen .
sudo sed -i 's/default_server//g' /etc/nginx/nginx.conf
Erstellen Sie eine neue Konfigurationsdatei für OpenMeetings Server.
sudo nano /etc/nginx/conf.d/meetings.example.com.conf
Füllen Sie die Datei.
server {
listen 80;
server_name meetings.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name meetings.example.com;
ssl_certificate /etc/letsencrypt/live/meetings.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/meetings.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/openmeetings.access.log;
location / {
proxy_pass http://localhost:5080;
proxy_set_header host $host;
proxy_http_version 1.1;
proxy_set_header upgrade $http_upgrade;
proxy_set_header connection "upgrade";
}
}
Überprüfen Sie die neue Konfigurationsdatei auf Fehler.
sudo nginx -t
Wenn Sie die folgende Ausgabe sehen, ist die Konfiguration fehlerfrei.
[user@vultr ~]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Wenn Sie einen Fehler erhalten haben, überprüfen Sie den Pfad zu den SSL-Zertifikaten. Starten Sie den Nginx-Webserver neu, um die Konfigurationsänderung zu implementieren.
sudo systemctl restart nginx
Bevor Sie die Anwendung auf der SSL-gesicherten Site verwenden können, müssen Sie in OpenMeetings eine Konfigurationsänderung vornehmen. Melden Sie sich bei Ihrem OpenMeetings-Verwaltungs-Dashboard an und navigieren Sie zu " Administration >> Configuration
". In der Tabelle mit ID, Schlüssel und Wert; finden application.base.url
. Ändern Sie den Wert https://meetings.example.com
entsprechend Ihrem Domain-Namen. Speichern Sie die Konfiguration, indem Sie oben auf das Speichersymbol klicken.
Starten Sie den OpenMeetings-Dienst neu.
sudo systemctl restart openmeetings
Jetzt können Sie https://meetings.example.com
mit Ihrem bevorzugten Webbrowser navigieren und sich anmelden, um die Anwendung zu verwenden.
Herzlichen Glückwunsch, Apache OpenMeetings ist jetzt auf Ihrem Server installiert. Sie können Ihre Freunde einladen und OpenMeetings für Online-Konferenzen verwenden.
Verwenden Sie ein anderes System? Zammad ist ein Open-Source-Helpdesk- / Ticketing-System für Kundenserviceteams. Mit Zammad, Kundendienst
Verwenden Sie ein anderes System? InvoicePlane ist eine kostenlose Open-Source-Rechnungsanwendung. Der Quellcode befindet sich in diesem Github-Repository. Diese Anleitung
Verwenden Sie ein anderes System? Taiga ist eine kostenlose Open Source-Anwendung für das Projektmanagement. Im Gegensatz zu anderen Projektmanagement-Tools verwendet Taiga ein Inkrement
Verwenden Sie ein anderes System? Sentrifugo HRM ist eine kostenlose und Open-Source-Anwendung für Personalmanagement (HRM). Es ist reich an Funktionen und einfach zu konfigurieren
Verwenden Sie ein anderes System? Osclass ist ein Open Source-Projekt, mit dem Sie auf einfache Weise eine klassifizierte Site ohne technisches Wissen erstellen können. Seine Quelle
Verwenden Sie ein anderes System? Matomo (ehemals Piwik) ist eine Open Source-Analyseplattform, eine offene Alternative zu Google Analytics. Matomo Quelle wird gehostet o
Verwenden Sie ein anderes System? Mailtrain ist eine selbst gehostete Open-Source-Newsletter-App, die auf Node.js und MySQL / MariaDB basiert. Mailtrains-Quelle ist auf GitHub. Thi
Verwenden Sie ein anderes System? X-Cart ist eine äußerst flexible Open-Source-E-Commerce-Plattform mit unzähligen Funktionen und Integrationen. Der X-Cart-Quellcode ist Hoste
Verwenden Sie ein anderes System? Mailtrain ist eine selbst gehostete Open-Source-Newsletter-App, die auf Node.js und MySQL / MariaDB basiert. Mailtrains-Quelle ist auf GitHub. Thi
Verwenden Sie ein anderes System? Matomo (ehemals Piwik) ist eine Open Source-Analyseplattform, eine offene Alternative zu Google Analytics. Matomo Quelle wird gehostet o
Verwenden Sie ein anderes System? Mailtrain ist eine selbst gehostete Open-Source-Newsletter-App, die auf Node.js und MySQL / MariaDB basiert. Mailtrains-Quelle ist auf GitHub. Thi
Verwenden Sie ein anderes System? Dolibarr ist ein Open Source Enterprise Resource Planning (ERP) und Customer Relationship Management (CRM) für Unternehmen. Dolibarr
Verwenden Sie ein anderes System? Mailtrain ist eine selbst gehostete Open-Source-Newsletter-App, die auf Node.js und MySQL / MariaDB basiert. Mailtrains-Quelle ist auf GitHub. Thi
Verwenden Sie ein anderes System? osTicket ist ein Open-Source-Kundensupport-Ticketing-System. Der Quellcode von osTicket wird öffentlich auf Github gehostet. In diesem Tutorial
Verwenden Sie ein anderes System? Die Alfresco Community Edition ist eine Open Source-Version der Alfresco Content Services. Es ist in Java geschrieben und verwendet PostgreSQL t
Verwenden Sie ein anderes System? Sentrifugo HRM ist eine kostenlose und Open-Source-Anwendung für das Personalmanagement. Es ist reich an Funktionen und einfach zu konfigurieren
Verwenden Sie ein anderes System? Akaunting ist eine kostenlose Open Source- und Online-Buchhaltungssoftware für kleine Unternehmen und Freiberufler. Es ist witzig gebaut
Verwenden Sie ein anderes System? Akaunting ist eine kostenlose Open Source- und Online-Buchhaltungssoftware für kleine Unternehmen und Freiberufler. Es ist witzig gebaut
Verwenden Sie ein anderes System? InvoicePlane ist eine kostenlose Open-Source-Rechnungsanwendung. Der Quellcode befindet sich in diesem Github-Repository. Diese Anleitung
Verwenden Sie ein anderes System? Taiga ist eine kostenlose Open Source-Anwendung für das Projektmanagement. Im Gegensatz zu anderen Projektmanagement-Tools verwendet Taiga ein Inkrement
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, 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.
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+
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.
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
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
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
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.