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