GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer l'application Web de suivi du temps Kimai sous Linux

Grâce à cet article, vous apprendrez comment installer Kimai sous Linux.

Introduction

Kimaï est une application gratuite de suivi du temps (open-source), Avec Kimai, le processus ennuyeux d'alimentation des feuilles de calcul Excel avec vos heures de travail n'est pas seulement simplifié, il offre également des dizaines d'autres fonctionnalités intéressantes que vous ne connaissez même pas vous manquez jusqu'à présent !

Kimai n'a pas besoin de s'exécuter pendant l'enregistrement, vous pouvez même quitter votre navigateur. Votre temps continue d'enregistrer jusqu'à ce que vous l'arrêtiez à partir de n'importe quel navigateur Web ayant accès à votre installation. Il est conçu pour contenir de nombreux utilisateurs, mais vous pouvez également l'utiliser pour un seul utilisateur si vous le souhaitez.

Liste des fonctionnalités

La liste suivante concerne les fonctionnalités offertes par Kimai.

NOM DESCRIPTION
Compatible avec les mobiles La mise en page est entièrement réactive, basée sur bootstrap et conçue pour une utilisation sur ordinateur et mobile.
Plug-ins Kimai a été conçu dans un souci d'extensibilité, l'ensemble de fonctionnalités peut être étendu avec des plugins.
Multi-utilisateur Kimai peut être utilisé par autant d'utilisateurs que vous le souhaitez :chaque installation prend en charge un nombre illimité d'utilisateurs avec des rôles différents (voir les autorisations).
Multilingue Kimai peut être localisé dans n'importe quelle langue et est déjà traduit en arabe, basque, chinois, croate, tchèque, danois, néerlandais, anglais, espéranto, finnois, français, allemand (y compris autrichien et suisse), grec, Hébreu, hongrois, italien, japonais, coréen, polonais, portugais (brésilien), roumain, russe, slovaque, espagnol, suédois, turc et vietnamien . N'hésitez pas à envoyer vos propres fichiers de langue ou à contribuer au projet Weblate ci-dessous - nous recherchons des traducteurs et apprécierions votre soutien !
Équipes Des équipes peuvent être créées pour regrouper vos utilisateurs en groupes logiques tels que des départements ou des groupes de pairs liés à un projet. Les clients et les projets peuvent être affectés à ces équipes, ce qui limitera la visibilité et l'accès des autres utilisateurs.
Clients Gérez vos clients et définissez l'adresse, les contacts, le pays, la devise, la visibilité (pour l'archivage) et bien d'autres champs.
Projets Gérer les projets pour chaque client avec numéro de commande, budget et visibilité (pour l'archivage).
Activités Les activités (ou tâches) sont utilisées pour attribuer l'unité de travail aux entrées de la feuille de temps. Gérez les activités de chaque projet avec numéro de commande, budget et visibilité (pour l'archivage). Les activités peuvent aussi être globales, plus de duplications nécessaires si vos projets partagent la même unité de travail !
Facturation Différents modèles, calculatrice, générateur de numéros de facture et vous pouvez ajouter vos propres modèles, dans les formats de fichier :XLSX, ODS, CSV, DOCX.
Exporter des données Les données des feuilles de temps peuvent être exportées pour être utilisées dans d'autres programmes ou pour les partager avec différents services du
formats :XLSX (Excel), PDF, CSV et HTML. De plus, les enregistrements exportés peuvent être verrouillés et protégés contre d'autres modifications.
Dépenses Gardez une trace de vos dépenses en fonction du client, du projet et de l'activité. Ces dépenses peuvent être catégorisées et incluses dans vos factures. Veuillez noter :le suivi des dépenses est disponible uniquement en tant que plug-in payant.
SAML Connectez-vous et enregistrez les utilisateurs via SAML (authentification unique ou SSO) et réutilisez votre fournisseur d'identité existant, comme l'application Google (G-Suite) ou Azure Active Directory.
API JSON Doté d'une API JSON pour que les applications externes puissent communiquer avec votre outil de suivi du temps préféré !
LDAP Connectez le serveur d'annuaire de votre entreprise (LDAP ou Active Directory) à Kimai et utilisez votre infrastructure d'authentification existante.
Statistiques Votre tableau de bord vous montrera plusieurs statistiques sur les temps enregistrés et la quantité de données collectées. Et nous pouvons toujours ajouter plus de graphiques !
Docker La version inclut une image docker pour le développement et une configuration docker-compose distincte est disponible pour la production.
Migration Les données de Kimai v1 peuvent être importées, pour une migration transparente de votre chronomètre.
Limiter les enregistrements Vous pouvez enregistrer autant de fois que vous le souhaitez en parallèle, mais vous pouvez également configurer la limite autorisée d'enregistrements actifs jusqu'à 1.
Format AM/PM Kimai utilise une version localisée du format 24 heures. Mais si vous êtes habitué au format am/pm, vous pouvez le configurer.
Durée uniquement Si vos lois locales vous obligent à n'afficher que les durées au lieu des dates et heures de début et de fin, vous pouvez activer ce mode globalement.
Horloge Vous ne voulez pas que vos utilisateurs enregistrent des enregistrements de feuilles de temps arbitraires ? Passez en mode horloge, qui n'autorise que les enregistrements "punch in" et "punch out". Plus d'heures de début et de fin données manuellement.
Calcul du taux Les tarifs peuvent être calculés sur la base de montants horaires et fixes, configurables pour les clients, les projets, les activités et chaque enregistrement de feuille de temps individuellement.
Filtre de feuille de temps Vous pouvez filtrer tous les enregistrements de temps par utilisateur, client, projet, activité et date.
Tarifs week-end Vous pouvez configurer les paramètres globaux pour les facteurs de taux sur un seul jour de la semaine, par ex. 150 % pour le samedi et le dimanche.
Archivage Les utilisateurs à long terme savent que les anciennes données peuvent s'accumuler dans vos listes déroulantes. Ne vous inquiétez pas :vous pouvez les masquer en limitant la visibilité des clients, des projets et des activités.
Autorisations Structure d'autorisation personnalisable. Attribuez différents rôles à votre utilisateur, par ex. les utilisateurs peuvent enregistrer les heures, les chefs d'équipe peuvent imprimer des factures et configurer des projets/activités, les administrateurs peuvent configurer des utilisateurs et des clients.
Profil utilisateur Statistiques personnelles et paramètres par utilisateur pour le tarif horaire, le thème Kimai, le mot de passe et l'avatar.
Thème Kimai regroupe différents thèmes de couleurs et paramètres d'affichage, afin que chaque utilisateur puisse l'adapter à sa saveur personnelle
Enregistrement de l'utilisateur Kimai prend en charge l'auto-enregistrement des utilisateurs avec activation par e-mail.
Réinitialisation du mot de passe Mot de passe oublié ? Pas de problème, Kimai vous offre une fonctionnalité de réinitialisation de mot de passe par e-mail.
À jour Basé sur les dernières technologies et frameworks Web :PHP7, Symfony 4, Doctrine, Flex, Bootstrap, Webpack et bien d'autres…

Donc, dans cet article, nous allons illustrer comment installer et utiliser kimai dans Ubuntu 20.04

installer Kimai sous Linux

Suivez simplement les étapes ci-dessous pour commencer avec kimai.

  • Mettez à jour, préparez votre serveur et installez les utilitaires importants.
sudo apt update && sudo apt upgrade 
sudo apt install git curl vim
  • Installez et configurez la base de données, nous allons installer le serveur mariadb, il vous suffit donc d'exécuter la commande ci-dessous.
apt install mariadb-server
  • Démarrer et activer le service mariadb.
systemctl start mariadb
systemctl enable mariadb
  • Activez et sécurisez l'installation de mariadb avec la commande ci-dessous :
mysql_secure_installation
  • L'étape suivante consiste à créer une base de données et un utilisateur pour Kimai .
mysql -u root -p
  • Créer une base de données et un utilisateur pour Kimai
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
  • Installer et configurer un serveur Web pour kimai.
apt install nginx php-fpm
  • Démarrez et activez le serveur Web ngin.
systemctl start nginx
systemctl enable nginx
  • Ajouter les paramètres PHP recommandés
vim /etc/php/7.4/fpm/php.ini
  • Ensuite, modifiez les valeurs ci-dessous
memory_limit = 512M 
date.timezone = Africa/Cairo
  • Installez toutes les extensions PHP requises
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 
  • Installer composer qui installe les dépendances PHP requises par un projet.
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
  • Installer kiami depuis Git
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
  • Configurer la connexion à la base de données dans le .env fichier en définissant le nom d'utilisateur, le mot de passe et la base de données que nous avons configurés auparavant
sudo vim /var/www/html/kimai2/.env
  • Modifiez ensuite l'URL de la base de données et hachez la ligne sqlite comme suit :
DATABASE_URL=mysql://kimai_usr:[email protected]:3306/kimai_db
#DATABASE_URL=sqlite:///%kernel.project_dir%/var/data/kimai.sqlite
  • Exécutez le programme d'installation de Kimai
cd /var/www/html/kimai2
bin/console kimai:install -n
  • Créez votre premier utilisateur. et assurez-vous que son mot de passe comporte plus de 8 caractères.
sudo bin/console kimai:create-user username admin@unixcop ROLE_SUPER_ADMIN
  • L'étape suivante consiste à générer des certificats SSL/TLS auto-signés

Une fois l'installation de Kimai terminée, nous allons générer des certificats SSL/TLS pour la connexion SSL Nginx et créer un fichier de configuration Nginx pour définir les paramètres de Kimai. C'est juste pour rendre les choses un peu plus sûres.

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

Une fois cela fait, nous allons ensuite générer le groupe Deftie-Hellman comme suit. Cela prendra un certain temps.

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

Définissez ensuite la valeur de types_hash_max_size sur 4096 dans le fichier de configuration Nginx.

sudo sed -i 's/types_hash_max_size 2048/types_hash_max_size 4096/' /etc/nginx/nginx.conf
  • Nous allons maintenant configurer le fichier nginx pour kimai.
cd /etc/nginx/sites-enabled/ 
sudo mv default /tmp
  • Créez un nouveau fichier et ajoutez les détails indiqués ci-dessous. Si vous avez un FQDN, remplacez unixcop.com avec elle.
sudo vim kimai.conf
  • Ajoutez ensuite ce qui suit :
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;
    }
 }
  • Modifier les autorisations des fichiers de 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
  • Autoriser les ports 80 et 443 sur le pare-feu
sudo ufw allow 80,443/tcp

Accéder à l'interface Web Kimai

  • Ouvrez votre navigateur sur l'adresse IP ou le nom de domaine du serveur Web servant les fichiers. https://[ip-or-domain-name] .
  • Ensuite, connectez-vous avec l'utilisateur que nous avons créé.
  • Accéder au tableau de bord.
  • Pour créer un utilisateur , Accédez à la section "Utilisateurs ” Tab sur le tableau de bord Kimai et cliquez dessus. Après cela, cliquez sur le + pour créer un nouvel utilisateur.
  • Saisissez les détails comme indiqué ci-dessous, puis cliquez sur "Enregistrer ” comme indiqué ci-dessus
  • Après l'avoir enregistré, une nouvelle page s'affichera où vous pourrez ajouter "Rôles " et le reste. Entrez les bons rôles pour l'utilisateur. Faites cela pour autant d'utilisateurs que vous avez.
  • Cliquez à nouveau sur les utilisateurs pour vérifier que vous avez créé un utilisateur comme indiqué ci-dessous.
  • Pour créer une équipe , la création d'équipe est limitée aux rôles d'utilisateur System-Admin et Administrator. Accédez aux "Équipes ” Tab sur le tableau de bord Kimai et cliquez dessus. Cliquez sur le + situé en haut à droite pour créer une nouvelle équipe.
  • Saisissez les détails de l'équipe que vous créez.
  • Vous pouvez également ajouter des projets, activités et plugins.
  • Vérifiez que l'équipe a été créée en accédant à Équipes

Conclusion

Voilà,

Dans ce guide, nous vous avons montré comment installer et utiliser kimai sur Ubuntu 20.04

Merci


Linux
  1. Comment installer Python sur Linux

  2. Comment installer Java sur Linux

  3. Comment installer FFmpeg sous Linux

  4. Comment installer Vagrant sur Linux

  5. Comment installer TeamViewer 15 sur Linux

Comment installer le langage Go sous Linux

Comment installer Anaconda sous Linux

Comment installer Bashtop sous Linux

Comment installer Helm sur Linux

Comment installer PuTTY sur Linux

Comment installer un logiciel Windows sur Linux avec Bottles