この投稿のおかげで、LinuxにKimaiをインストールする方法を学ぶことができます。
はじめに
キマイ は無料のタイムトラッキングアプリ(オープンソース)です。 Kimaiを使用すると、Excelスプレッドシートに勤務時間を提供するという退屈なプロセスが簡素化されるだけでなく、知らない他の多くのエキサイティングな機能も提供されます。あなたは今のところ行方不明です!
キマイは録音中に実行する必要はなく、ブラウザを終了することもできます。インストールにアクセスできるWebブラウザーから停止するまで、時間は記録されたままです。多くのユーザーを収容できるように設計されていますが、必要に応じて1人のユーザーにも使用できます。
機能リスト
以下のリストは、キマイが提供する機能に関するものです。
NAME | 説明 |
---|---|
モバイル対応 | レイアウトは完全にレスポンシブで、ブートストラップに基づいており、デスクトップとモバイルで使用できるように作られています。 |
プラグイン | Kimaiは拡張性を念頭に置いて構築されており、機能セットはプラグインで拡張できます。 |
マルチユーザー | Kimaiは、必要な数のユーザーが使用できます。各インストールは、異なる役割を持つ無制限のユーザーをサポートします(権限を参照)。 |
多言語 | Kimaiは任意の言語にローカライズでき、すでにアラビア語、バスク語、中国語、クロアチア語、チェコ語、デンマーク語、オランダ語、英語、エスペラント語、フィンランド語、フランス語、ドイツ語(オーストリア語とスイス語を含む)、ギリシャ語、ヘブライ語、ハンガリー語、イタリア語、日本語、韓国語、ポーランド語、ポルトガル語(ブラジル語)、ルーマニア語、ロシア語、スロバキア語、スペイン語、スウェーデン語、トルコ語、ベトナム語 。自作の言語ファイルを送信するか、以下のweblateプロジェクトに貢献してください。翻訳者を募集しています。ご支援いただければ幸いです。 |
チーム | チームを作成して、ユーザーを部門やプロジェクト関連のピアグループなどの論理グループにグループ化できます。顧客とプロジェクトをそれらのチームに割り当てることができます。これにより、他のユーザーの可視性とアクセスが制限されます。 |
顧客 | 顧客を管理し、住所、連絡先、国、通貨、可視性(アーカイブ用)、その他多くのフィールドを設定します。 |
プロジェクト | 注文番号、予算、可視性(アーカイブ用)を使用して、各顧客のプロジェクトを管理します。 |
アクティビティ | アクティビティ(またはタスク)は、作業単位をタイムシートエントリに割り当てるために使用されます。注文番号、予算、可視性(アーカイブ用)を使用して、各プロジェクトのアクティビティを管理します。アクティビティはグローバルにすることもできます。プロジェクトが同じ作業単位を共有している場合は、重複する必要はありません。 |
請求 | さまざまなテンプレート、計算機、請求書番号ジェネレーター。独自のテンプレートをファイル形式(XLSX、ODS、CSV、DOCX)で追加できます。 |
データのエクスポート | タイムシートデータをエクスポートして、他のプログラムで使用したり、他の部門と共有したりできます。 フォーマット:XLSX(Excel)、PDF、CSV、HTML。さらに、エクスポートされたレコードをロックして、それ以上の変更から保護することができます。 |
経費 | 顧客、プロジェクト、および活動に基づいて経費を追跡します。これらの支出は分類して請求書に含めることができます。注:経費追跡は有料プラグインとしてのみ利用できます。 |
SAML | ログインしてSAML(SSOとしてのシングルサインオン)を介してユーザーを登録し、Googleアプリ(G-Suite)やAzureActiveDirectoryなどの既存のIDプロバイダーを再利用します。 |
JSON API | JSON APIを搭載しているため、外部アプリがお気に入りのタイムトラッカーと通信できます! |
LDAP | 会社のディレクトリサーバー(LDAPまたはActive Directory)をKimaiに接続し、既存の認証インフラストラクチャを使用します。 |
統計 | ダッシュボードには、記録された時間と収集されたデータの量に関するいくつかの統計が表示されます。そして、いつでもチャートを追加できます! |
ドッカー | このリリースには、開発用のDockerイメージが含まれており、本番環境用に別のdocker-composeセットアップが利用可能です。 |
移行 | Kimai v1のデータをインポートして、タイムトラッカーをシームレスに移行できます。 |
レコードの制限 | 並行して必要な回数だけ記録できますが、アクティブな記録の許可される制限を1まで設定することもできます。 |
AM/PM形式 | Kimaiは24時間形式のローカライズ版を使用しています。ただし、am / pm形式に慣れている場合は、それを構成できます。 |
期間のみ | 地域の法律で開始日時ではなく期間のみを表示することが義務付けられている場合は、そのモードをグローバルにアクティブ化できます。 |
タイムレコーダー | ユーザーに任意のタイムシートレコードを記録させたくないですか? 「パンチイン」と「パンチアウト」のレコードのみを許可するタイムレコーダーモードに切り替えます。手動で開始時刻と終了時刻を指定する必要はもうありません。 |
レート計算 | 料金は、時間単位および固定金額に基づいて計算でき、顧客、プロジェクト、アクティビティ、および各タイムシートレコードに対して個別に構成できます。 |
タイムシートフィルター | ユーザー、顧客、プロジェクト、アクティビティ、日付ですべての時間記録をフィルタリングできます。 |
週末の料金 | 単一の平日のレート係数のグローバル設定を構成できます。土曜日と日曜日は150%。 |
アーカイブ | 長期的なユーザーは、古いデータがドロップダウンに蓄積される可能性があることを知っています。心配しないでください。顧客、プロジェクト、アクティビティの可視性を制限することで、古いデータを非表示にすることができます。 |
権限 | カスタマイズ可能な権限構造。ユーザーにさまざまな役割を割り当てます。例:ユーザーは時間を記録でき、チームリーダーは請求書を印刷してプロジェクト/アクティビティを構成でき、管理者はユーザーと顧客を構成できます。 |
ユーザープロファイル | 個人統計と、時給、キマイテーマ、パスワード、アバターのユーザーごとの設定。 |
テーマ | Kimaiにはさまざまな色のテーマと表示設定がバンドルされているため、すべてのユーザーが自分の好みに合わせて調整できます |
ユーザー登録 | Kimaiは、メールアクティベーションによるユーザーの自己登録をサポートしています。 |
パスワードのリセット | パスワードをお忘れですか?問題ありません。キマイは、メールでパスワードリセット機能を利用できるようにしました。 |
最新 | 最新のWebテクノロジーとフレームワークに基づく:PHP7、Symfony 4、Doctrine、Flex、Bootstrap、Webpackなど… |
したがって、この記事では、Ubuntu20.04にkimaiをインストールして使用する方法を説明します
キマイをインストール Linuxの場合
キマイを始めるには、以下の手順に従ってください。
- サーバーを更新、準備し、重要なユーティリティをインストールします。
sudo apt update && sudo apt upgrade
sudo apt install git curl vim
- データベースをインストールしてセットアップします。mariadbサーバーをインストールするので、以下のコマンドを実行するだけです。
apt install mariadb-server
- mariadbサービスを開始して有効にします。
systemctl start mariadb
systemctl enable mariadb
- 以下のコマンドを使用して、mariadbのインストールをアクティブ化して保護します。
mysql_secure_installation
- 次のステップは、 Kimaiのデータベースとユーザーを作成することです。 。
mysql -u root -p
- 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
- kimai用のWebサーバーをインストールして構成します。
apt install nginx php-fpm
- nginWebサーバーを起動して有効にします。
systemctl start nginx
systemctl enable nginx
- 推奨されるPHP設定を追加する
vim /etc/php/7.4/fpm/php.ini
- 次に、以下の値を編集します
memory_limit = 512M
date.timezone = Africa/Cairo
- 必要なすべてのphp拡張機能をインストールします
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
- プロジェクトに必要なPHP依存関係をインストールするcomposerをインストールします。
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

- Gitからkiamiをインストールする
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
- .envでデータベース接続を構成します 以前に構成したユーザー名、パスワード、データベースを設定してファイルを作成します
sudo vim /var/www/html/kimai2/.env
- 次に、データベースのURLを編集し、次のようにsqlite行をハッシュします。
DATABASE_URL=mysql://kimai_usr:[email protected]:3306/kimai_db
#DATABASE_URL=sqlite:///%kernel.project_dir%/var/data/kimai.sqlite
- Kimaiインストーラーを実行します
cd /var/www/html/kimai2
bin/console kimai:install -n


- 最初のユーザーを作成します。パスワードが8文字を超えていることを確認してください。
sudo bin/console kimai:create-user username admin@unixcop ROLE_SUPER_ADMIN

- 次のステップは、自己署名SSL/TLS証明書を生成することです
Kimaiインストーラーが完了したら、NginxSSL接続用のSSL/ TLS証明書を生成し、Kimaiの設定を定義するためのNginx構成ファイルを作成します。これは、物事を少し安全にするためだけのものです。
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
それが完了したら、次に次のようにDeffie-Hellmanグループを生成します。完了するまでに少し時間がかかります。
sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
次に、Nginx構成ファイルでtypes_hash_max_sizeの値を4096に設定します。
sudo sed -i 's/types_hash_max_size 2048/types_hash_max_size 4096/' /etc/nginx/nginx.conf
- 次に、kimaiのnginxファイルを構成します。
cd /etc/nginx/sites-enabled/
sudo mv default /tmp
- 新しいファイルを作成し、以下に示す詳細を追加します。 FQDNがある場合は、 unixcop.comを置き換えます それで。
sudo vim kimai.conf
- 次に、以下を追加します。
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;
}
}
- キマイのファイル権限を変更する
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
- ファイアウォールでポート80と443を許可する
sudo ufw allow 80,443/tcp
キマイWebインターフェイスにアクセス
- ファイルを提供しているウェブサーバーのIPまたはドメイン名でブラウザを開きます。https:// [ip-or-domain-name] 。
- 次に、作成したユーザーでログインします。

- ダッシュボードにアクセスします。

- ユーザーを作成するには 、「ユーザー」に移動します キマイダッシュボードのタブをクリックしてクリックします。その後、 +をクリックします 新しいユーザーを作成します。


- 以下に示すように詳細を入力し、[保存]をクリックします 」上記のように
- 保存すると、「ロール」を追加できる新しいページが表示されます 」と残り。ユーザーに適切な役割を入力します。これは、できるだけ多くのユーザーに対して行います。

- ユーザーをもう一度クリックして、以下に示すようにユーザーを作成したことを確認します。

- チームを作成するには 、チームの作成は、ユーザーロールSystem-AdminおよびAdministratorに制限されています。 「チーム」に移動します キマイダッシュボードのタブをクリックしてクリックします。 +をクリックします 新しいチームを作成するために右上にあります。

- 作成するチームの詳細を入力します。

- また、プロジェクト、アクティビティを追加することもできます およびプラグイン。

- チームに移動して、チームが作成されていることを確認します

結論
それだけです、
このガイドでは、Ubuntu20.04にkimaiをインストールして使用する方法を説明しました
ありがとう