GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie die webbasierte Zeiterfassungsanwendung Kimai unter Linux

Dank dieses Beitrags erfahren Sie, wie Sie Kimai unter Linux installieren.

Einführung

Kima ist eine kostenlose Zeiterfassungs-App (Open Source). Mit Kimai wird der langweilige Vorgang, Excel-Tabellen mit Ihren Arbeitszeiten zu füttern, nicht nur vereinfacht, sondern bietet auch Dutzende anderer spannender Funktionen, die Sie noch nicht einmal kennen Du fehlst bisher!

Kimai muss während der Aufnahme nicht laufen, Sie können sogar Ihren Browser beenden. Ihre Zeit wird weiterhin aufgezeichnet, bis Sie sie von einem beliebigen Webbrowser aus stoppen, der Zugriff auf Ihre Installation hat. Es ist für viele Benutzer ausgelegt, aber Sie können es auch für einen einzelnen Benutzer verwenden, wenn Sie möchten.

Funktionsliste

Die folgende Liste enthält die Funktionen, die Kimai bietet.

NAME BESCHREIBUNG
Für Mobilgeräte bereit Das Layout ist vollständig responsiv, basiert auf Bootstrap und ist für die Verwendung auf Desktops und Mobilgeräten konzipiert.
Plugins Kimai wurde im Hinblick auf Erweiterbarkeit entwickelt, der Funktionsumfang kann mit Plugins erweitert werden.
Mehrere Benutzer Kimai kann von beliebig vielen Benutzern verwendet werden:Jede Installation unterstützt eine unbegrenzte Anzahl von Benutzern mit unterschiedlichen Rollen (siehe Berechtigungen).
Mehrsprachig Kimai kann in jede Sprache lokalisiert werden und ist bereits übersetzt in Arabisch, Baskisch, Chinesisch, Kroatisch, Tschechisch, Dänisch, Niederländisch, Englisch, Esperanto, Finnisch, Französisch, Deutsch (einschließlich Österreichisch und Schweizerisch), Griechisch, Hebräisch, Ungarisch, Italienisch, Japanisch, Koreanisch, Polnisch, Portugiesisch (Brasilien), Rumänisch, Russisch, Slowakisch, Spanisch, Schwedisch, Türkisch und Vietnamesisch . Senden Sie uns gerne Ihre selbst erstellten Sprachdateien oder tragen Sie zum unten stehenden weblate-Projekt bei – wir suchen Übersetzer und würden uns über Ihre Unterstützung freuen!
Teams Teams können erstellt werden, um Ihre Benutzer in logische Gruppen wie Abteilungen oder projektbezogene Peer-Gruppen zu gruppieren. Kunden und Projekte können diesen Teams zugewiesen werden, was die Sichtbarkeit und den Zugriff für andere Benutzer einschränkt.
Kunden Verwalten Sie Ihre Kunden und legen Sie Adresse, Kontakte, Land, Währung, Sichtbarkeit (zur Archivierung) und viele weitere Felder fest.
Projekte Projekte für jeden Kunden mit Auftragsnummer, Budget und Sichtbarkeit (zur Archivierung) verwalten.
Aktivitäten Aktivitäten (oder Aufgaben) werden verwendet, um die Arbeitseinheit Stundenzetteleinträgen zuzuweisen. Verwalten Sie Aktivitäten für jedes Projekt mit Auftragsnummer, Budget und Sichtbarkeit (zur Archivierung). Aktivitäten können auch global sein, keine Duplizierung mehr notwendig, wenn sich Ihre Projekte dieselbe Arbeitseinheit teilen!
Rechnungsstellung Verschiedene Vorlagen, Taschenrechner, Rechnungsnummerngenerator und Sie können Ihre eigenen Vorlagen hinzufügen, in den Dateiformaten:XLSX, ODS, CSV, DOCX.
Daten exportieren Zeiterfassungsdaten können zur Verwendung in anderen Programmen oder zur gemeinsamen Nutzung mit verschiedenen Abteilungen im exportiert werden
Formate:XLSX (Excel), PDF, CSV und HTML. Darüber hinaus können exportierte Datensätze gesperrt und vor weiteren Änderungen geschützt werden.
Kosten Verfolgen Sie Ihre Ausgaben basierend auf Kunden, Projekten und Aktivitäten. Diese Ausgaben können kategorisiert und in Ihre Rechnungen aufgenommen werden. Bitte beachten Sie:Die Ausgabenverfolgung ist nur als kostenpflichtiges Plugin verfügbar.
SAML Melden Sie sich über SAML (Single Sign-On, auch SSO) an und registrieren Sie Benutzer, und verwenden Sie Ihren vorhandenen Identitätsanbieter wie die Google-App (G-Suite) oder Azure Active Directory erneut.
JSON-API Ausgestattet mit einer JSON-API, damit externe Apps mit Ihrem bevorzugten Zeiterfassungssystem kommunizieren können!
LDAP Verbinden Sie den Verzeichnisserver Ihres Unternehmens (LDAP oder Active Directory) mit Kimai und nutzen Sie Ihre vorhandene Authentifizierungsinfrastruktur.
Statistiken Ihr Dashboard zeigt Ihnen mehrere Statistiken über aufgezeichnete Zeiten und die Menge der gesammelten Daten. Und wir können jederzeit weitere Diagramme hinzufügen!
Docker Die Version enthält ein Docker-Image für die Entwicklung und es ist ein separates Docker-Compose-Setup für die Produktion verfügbar.
Migration Daten von Kimai v1 können importiert werden, für eine nahtlose Migration Ihrer Zeiterfassung.
Datensätze begrenzen Sie können beliebig oft parallel aufzeichnen, aber Sie können auch das zulässige Limit der aktiven Aufzeichnungen auf 1 herunterkonfigurieren.
AM/PM-Format Kimai verwendet eine lokalisierte Version des 24-Stunden-Formats. Aber wenn Sie an das am/pm-Format gewöhnt sind, können Sie das konfigurieren.
Nur Dauer Falls Ihre lokalen Gesetze vorschreiben, dass Sie nur die Dauer anstelle von Start- und Enddatum und Uhrzeit anzeigen müssen, können Sie diesen Modus global aktivieren.
Stechuhr Sie möchten nicht, dass Ihre Benutzer willkürliche Zeiterfassungsdatensätze protokollieren? Wechseln Sie in den Time-Clock-Modus, der nur „Punch-In“- und „Punch-Out“-Aufnahmen zulässt. Keine manuell eingegebenen Start- und Endzeiten mehr.
Tarifberechnung Die Tarife können auf der Grundlage von Stunden- und Festbeträgen berechnet werden und sind für Kunden, Projekte, Aktivitäten und jeden Stundenzettel individuell konfigurierbar.
Arbeitszeittabellenfilter Sie können alle Zeiterfassungen nach Benutzer, Kunde, Projekt, Aktivität und Datum filtern.
Wochenendtarife Sie können globale Einstellungen für Ratenfaktoren an einzelnen Wochentagen vornehmen, z. 150 % für Samstag und Sonntag.
Archivierung Langjährige Nutzer wissen, dass sich alte Daten in Ihren Dropdowns häufen können – keine Sorge:Sie können sie ausblenden, indem Sie die Sichtbarkeit von Kunden, Projekten und Aktivitäten einschränken.
Berechtigungen Anpassbare Berechtigungsstruktur. Weisen Sie Ihrem Benutzer verschiedene Rollen zu, z. Benutzer können Zeiten erfassen, Teamleiter können Rechnungen drucken und Projekte/Aktivitäten konfigurieren, Administratoren können Benutzer und Kunden konfigurieren.
Benutzerprofil Persönliche Statistiken und benutzerspezifische Einstellungen für Stundensatz, Kimai-Design, Passwort und Avatar.
Themen Kimai bündelt verschiedene Farbthemen und Anzeigeeinstellungen, sodass jeder Benutzer es an seinen persönlichen Geschmack anpassen kann
Benutzerregistrierung Kimai unterstützt die Selbstregistrierung von Benutzern mit E-Mail-Aktivierung.
Passwort zurücksetzen Passwort vergessen? Kein Problem, Kimai hat Ihnen per E-Mail eine Funktion zum Zurücksetzen des Passworts bereitgestellt.
Aktuell Basierend auf den neuesten Webtechnologien und Frameworks:PHP7, Symfony 4, Doctrine, Flex, Bootstrap, Webpack und viele mehr…

Daher werden wir in diesem Artikel veranschaulichen, wie kimai in Ubuntu 20.04 installiert und verwendet wird

Installieren Sie Kimai unter Linux

Befolgen Sie einfach die nachstehenden Schritte, um mit kimai zu beginnen.

  • Aktualisiere, bereite deinen Server vor und installiere wichtige Dienstprogramme.
sudo apt update && sudo apt upgrade 
sudo apt install git curl vim
  • Datenbank installieren und einrichten, wir werden den Mariadb-Server installieren, also führen Sie einfach den folgenden Befehl aus.
apt install mariadb-server
  • Starten und aktivieren Sie den Mariadb-Dienst.
systemctl start mariadb
systemctl enable mariadb
  • Aktivieren und sichern Sie die Installation für Mariadb mit dem folgenden Befehl:
mysql_secure_installation
  • Der nächste Schritt besteht darin, eine Datenbank und einen Benutzer für Kimai zu erstellen .
mysql -u root -p
  • Datenbank und Benutzer für Kimai erstellen
CREATE DATABASE kimai_db;
CREATE USER 'kimai_usr'@'localhost' IDENTIFIED BY 'unixcopPassword';
GRANT ALL PRIVILEGES ON kimai_db . * TO 'kimai_usr'@'localhost';
FLUSH PRIVILEGES;
\q
  • Installieren und konfigurieren Sie einen Webserver für kimai.
apt install nginx php-fpm
  • Starten und aktivieren Sie den ngin-Webserver.
systemctl start nginx
systemctl enable nginx
  • Fügen Sie die empfohlenen PHP-Einstellungen hinzu
vim /etc/php/7.4/fpm/php.ini
  • Bearbeiten Sie dann die folgenden Werte
memory_limit = 512M 
date.timezone = Africa/Cairo
  • Installieren Sie alle erforderlichen PHP-Erweiterungen
sudo apt install -y php-intl php-gd php-bcmath php-fpm php-json php-curl php-cli php-curl php-xml php-pear php-common php-mysql php-zip php-gd php-mbstring 
  • Installieren Sie Composer, der PHP-Abhängigkeiten installiert, die ein Projekt benötigt.
curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php --version=1.10.17 --install-dir=/usr/local/bin --filename=composer
  • Kiami von Git installieren
cd /var/www/html/
sudo git clone -b 1.11.1 --depth 1 https://github.com/kevinpapst/kimai2.git
cd kimai2/
sudo composer install --no-dev --optimize-autoloader
  • Konfigurieren Sie die Datenbankverbindung in der.env Datei, indem Sie den zuvor konfigurierten Benutzernamen, das Passwort und die Datenbank festlegen
sudo vim /var/www/html/kimai2/.env
  • Bearbeiten Sie dann die URL der Datenbank und hashen Sie die SQLite-Zeile wie folgt:
DATABASE_URL=mysql://kimai_usr:[email protected]:3306/kimai_db
#DATABASE_URL=sqlite:///%kernel.project_dir%/var/data/kimai.sqlite
  • Führen Sie das Kimai-Installationsprogramm aus
cd /var/www/html/kimai2
bin/console kimai:install -n
  • Erstellen Sie Ihren ersten Benutzer. und stellen Sie sicher, dass das Passwort mehr als 8 Zeichen hat.
sudo bin/console kimai:create-user username admin@unixcop ROLE_SUPER_ADMIN
  • Der nächste Schritt besteht darin, selbstsignierte SSL/TLS-Zertifikate zu generieren

Sobald das Kimai-Installationsprogramm fertig ist, generieren wir SSL/TLS-Zertifikate für die Nginx-SSL-Verbindung und erstellen eine Nginx-Konfigurationsdatei, um die Einstellungen von Kimai zu definieren. Dies dient lediglich der Sicherheit.

sudo mkdir /etc/ssl/private
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/kimai-selfsigned.key -out /etc/ssl/certs/kimai-selfsigned.crt

Sobald dies erledigt ist, werden wir als nächstes die Deffie-Hellman-Gruppe wie folgt generieren. Die Fertigstellung wird einige Zeit in Anspruch nehmen.

sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048

Setzen Sie dann den Wert von types_hash_max_size in der Nginx-Konfigurationsdatei auf 4096.

sudo sed -i 's/types_hash_max_size 2048/types_hash_max_size 4096/' /etc/nginx/nginx.conf
  • Nun konfigurieren wir die Nginx-Datei für Kimai.
cd /etc/nginx/sites-enabled/ 
sudo mv default /tmp
  • Erstellen Sie eine neue Datei und fügen Sie die unten gezeigten Details hinzu. Wenn Sie einen FQDN haben, ersetzen Sie unixcop.com damit.
sudo vim kimai.conf
  • Fügen Sie dann Folgendes hinzu:
server {
    listen 80;
    server_name kimai.unixcop.com;
    return 301 https://$host$request_uri;
}
server {
    listen 443 ssl;
    server_name kimai.unixcop.com;

    root /var/www/html/kimai2/public/;
    index index.php index.htm index.nginx-debian.html;

        ssl_certificate /etc/ssl/certs/kimai-selfsigned.crt;
    ssl_certificate_key /etc/ssl/private/kimai-selfsigned.key;

    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on; 
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
    ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
    ssl_ecdh_curve secp384r1;
    ssl_session_timeout  10m;
    ssl_session_cache shared:SSL:10m;
    resolver 8.8.8.8 valid=300s;
    resolver_timeout 5s; 
    add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload";
    add_header X-Frame-Options DENY;
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";

    location ~ /\.ht {
        deny all;
    }
    location / {
                try_files $uri /index.php$is_args$args;
    }

        location ~ ^/index\.php(/|$) {
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_read_timeout 240;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_split_path_info ^(.+.php)(/.+)$;
        }
    location ~ \.php$ {
        return 404;
    }
 }
  • Ändern Sie die Dateiberechtigungen von Kimai
sudo chown -R www-data:www-data /var/www/html/kimai2/public/
sudo chmod -R g+rw /var/www/html/kimai2/var/
sudo chmod -R 755 /var/www/html/kimai2/public/
sudo chmod -R g+rw /var/www/html/kimai2/public/avatars/
sudo systemctl restart nginx php7.4-fpm
  • Ports 80 und 443 auf der Firewall zulassen
sudo ufw allow 80,443/tcp

Zugriff auf die Kimai-Weboberfläche

  • Öffnen Sie Ihren Browser mit der IP oder dem Domänennamen des Webservers, der die Dateien bereitstellt. https://[IP-oder-Domänenname] .
  • Melden Sie sich dann mit dem von uns erstellten Benutzer an.
  • Greifen Sie auf das Dashboard zu.
  • So erstellen Sie einen Benutzer , Navigieren Sie zu „Benutzer ” Tippen Sie auf das Kimai-Dashboard und klicken Sie darauf. Klicken Sie danach auf das + um einen neuen Benutzer zu erstellen.
  • Geben Sie die Details wie unten gezeigt ein und klicken Sie dann auf „Speichern ” wie oben gezeigt
  • Nach dem Speichern wird eine neue Seite angezeigt, auf der Sie „Rollen hinzufügen können " und der Rest. Geben Sie die richtigen Rollen für den Benutzer ein. Tun Sie dies für so viele Benutzer wie Sie haben.
  • Klicken Sie erneut auf Benutzer, um zu überprüfen, ob Sie wie unten gezeigt einen Benutzer erstellt haben.
  • Um ein Team zu erstellen , ist die Teamerstellung auf die Benutzerrollen System-Admin und Administrator beschränkt. Navigieren Sie zu „Teams ” Tippen Sie auf das Kimai-Dashboard und klicken Sie darauf. Klicken Sie auf das + befindet sich oben rechts, um ein neues Team zu erstellen.
  • Geben Sie die Details des Teams ein, das Sie erstellen.
  • Sie können auch Projekte, Aktivitäten hinzufügen und Plugins.
  • Überprüfen Sie, ob das Team erstellt wurde, indem Sie zu Teams navigieren

Schlussfolgerung

Das ist es,

In dieser Anleitung haben wir Ihnen gezeigt, wie Sie kimai unter Ubuntu 20.04 installieren und verwenden

Danke


Linux
  1. So installieren Sie Python unter Linux

  2. So installieren Sie Java unter Linux

  3. So installieren Sie TeamViewer 15 unter Linux

  4. So installieren Sie PIP unter Linux

  5. So installieren Sie die Spotify-Anwendung unter Linux

So installieren Sie die Go-Sprache unter Linux

So installieren Sie Anaconda unter Linux

So installieren Sie Bashtop unter Linux

So installieren Sie Helm unter Linux

So installieren Sie PuTTY unter Linux

So installieren Sie Windows-Software unter Linux mit Bottles