Installer Kimai avec Docker
Kimai

Installer Kimai avec Docker

Table des matières

Kimai est une application de grade entreprise de suivi du temps, gratuite et open source. Il gère les cas d'utilisation des indépendants ainsi que des entreprises comptant des dizaines ou des centaines d'utilisateurs. Kimai a été conçu pour suivre la durée de vos projets et est livré avec de nombreuses fonctionnalités avancées.

Je ne suis pas très familier avec ce type d'application mais je la propose car elle est aboutie et que ça pourrait éventuellement intéresser des personnes qui ont une entreprise ou une raison de l'utiliser.

⚡Caractéristiques

  • Plugins: Kimai a été construit pour être extensible, et des fonctionnalités peuvent être ajoutées avec des plugins. Les développeurs qui souhaitent en créer peuvent utiliser de nombreux points d'extension.
  • Multi-utilisateurs: Kimai peut être utilisé par autant d’utilisateurs que vous le souhaitez, chaque installation supporte un nombre illimité d’utilisateurs avec des rôles différents.
  • Multilingue: Kimai peut être localisé dans n'importe quelle langue et est déjà traduit dans plus de 30 langues.
  • É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 pour les autres utilisateurs.
  • Clients: Gérez vos clients et définissez l’adresse, les contacts, le pays, la devise, la visibilité (pour l’archivage) et de nombreux autres champs.
  • Projets: Gérez les projets pour chaque client avec le numéro de commande, le budget et la visibilité (pour l’archivage).
  • Facturation: Différents modèles de factures, des options de regroupement des entrées, des numéros de factures configurables, et vous pouvez ajouter vos propres modèles au format PDF, DOCX, HTML, XLSX et ODS.
  • Export des données: Les données des feuilles de temps peuvent être exportées vers d'autres programmes, ou partagées avec différents départements au format XLSX (Excel), PDF, CSV et HTML. Les enregistrements exportés peuvent en outre être verrouillés et protégés contre toute modification ultérieure.
  • Dépenses: Achetez le greffon et gardez la trace des dépenses en fonction du client, du projet et de l'activité – pour les catégoriser et les inclure dans vos factures.
  • SAML: Connectez-vous et enregistrez les utilisateurs via SAML (single sign-on ou SSO) et réutilisez votre fournisseur d'identité existant, comme Google Workspace, Authentik ou Azure Active Directory.
  • JSON API
  • 2FA: Kimai prend en charge l'authentification à deux facteurs avec des jetons TOTP, sécurisez vos comptes d'utilisateur dès aujourd'hui !
  • 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 des graphiques supplémentaires !
  • Horloge: Vous ne voulez pas que vos utilisateurs enregistrent des fiches de temps arbitraires ? Passez au mode horloge, qui n’autorise que les enregistrements “punch in” et “punch out”. Plus besoin d’indiquer manuellement les heures de début et de fin.
  • Conforme au RGPD (Règlement général sur la protection des données).

L'installation

  1. Créez votre docker-compose.yml:
sudo nano docker-compose.yml
  1. Collez ça dedans en prenant soin d'adapter le port et les volumes suivant votre configuration.

Veillez à changer ces paramètres:

  • MOTdePASSE1 => Remplacez MOTdePASSE1 (x2) par le même mot de passe.
  • MOTdePASSE2 => Remplacez MOTdePASSE2 (x2) par le même mot de passe, mais différent du premier.
  • MOTdePASSE3 => Remplacez MOTdePASSE3 (x2) par le même mot de passe., mais différent du second et du premier.
  • MYSQL_ROOT_PASSWORD=ROOT_ACCESS_PASSWORD => changer ROOT_ACCESS_PASSWORD par un mot de passe fort.
  • VOTREipSERVEUR:3306 => remplacez uniquement VOTREipSERVEUR par l'IP de votre serveur.
services:
  kimai:
    image: lscr.io/linuxserver/kimai:latest
    container_name: kimai
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - DATABASE_URL=mysql://MOTdePASSE2:MOTdePASSE3@VOTREipSERVEUR:3306/MOTdePASSE1?charset=utf8&serverVersion=10.11.4-MariaDB-log
    volumes:
      - /srv/appdata/kimai/config:/config
    ports:
      - 8088:80
      - 4436:443
    restart: unless-stopped

  mariadb:
    image: lscr.io/linuxserver/mariadb:latest
    container_name: mariadb
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - MYSQL_ROOT_PASSWORD=ROOT_ACCESS_PASSWORD  # Changez_moi
      - MYSQL_DATABASE=MOTdePASSE1    
      - MYSQL_USER=MOTdePASSE2        
      - MYSQL_PASSWORD=MOTdePASSE3    
    volumes:
      - /srv/appdata/kimai/data:/config
    ports:
      - 3306:3306
    restart: unless-stopped
  1. On installe l'application:
docker-compose up -d

ou avec docker-compose V2:

docker compose up -d
  1. Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 4436 par défaut:
https://ip:4436/fr

Création du compte administrateur

C'est bien joli tout ça mais sans compte administrateur vous allez rester devant la porte d'entrée. Faites cette commande en prenant soin:

  • De remplacer zarev par votre nom d'utilisateur souhaité.
  • De remplacer zarev@belginux.com par le mail souhaité.
docker exec -it kimai console kimai:user:create zarev zarev@belginux.com ROLE_SUPER_ADMIN

Quand vous faites cette commande, il va vous demander votre mot de passe.

Ne vous trompez pas, par rapport à d'habitude il ne sera pas demandé de confirmation du mot de passe! Au pire mettez un mot de passe simple que vous changerez par la suite. Il faudra néanmoins 8 caractères sans quoi votre mot de passe sera refusé. Mais 12345678 est accepté sans problème.

Comme j'avais déjà créé le compte avant de faire l'article, j'ai créé un autre utilisateur pour que vous puissiez voir ce que cela donne quand c'est bon:


Terminer l'installation

Maintenant on passe sur la page web de l'application. Entrez vos identifiants créés précédemment et cliquez sur Connexion:

Configurez quelques options élémentaires, cliquez sur Suivant:

Je vous adresse mes félicitations aussi! 😃 Cliquez sur Suivant:

Vous voilà sur le dashboard:

zarev

->.<-
🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.