LinuxでKanboardを使ってミニマリストのカンバンを作成する方法

二人が一連の付箋を持っている写真

Kanboardは、自分のサーバーでホストできる軽量のカンバンプロジェクトトラッカーです。他のカンバントラッカーとは異なり、どこからでもアクセスできるシンプルで直感的なインターフェースを作成することを目指しています。

この記事では、Ubuntu 22.04にKanboardをインストールする方法を示します。また、コミュニティプラグインを使用してKanboardを拡張するプロセスも強調します。

目次

  • Kanboardを使用する理由
  • Kanboardのインストール
  • KanboardのSSL設定
  • ログインしてカンバンボードを作成する
  • プラグインを使ってカンバンボードをカスタマイズする
  • よくある質問

Kanboardを使用する理由

Kanboardの最大の利点の一つは、Dockerの魔法によってほぼすべてのサーバーで動作できることです。その結果、Kanboardのホスティングは、非技術的なユーザーにとっても簡単で痛みのないものになります。

それに加えて、Kanboardは柔軟なプラグインプラットフォームも備えています。これには、タグの作成、時間の追跡、カスタムスクリプトの実行が含まれます。たとえば、カードの内容に応じて各カードのプロパティを更新するプラグインを作成できます。

動作中のKanboardインスタンスのスクリーンショット

ヒント: アイゼンハワーマトリックスを理解することで、タスクの優先順位を効率的かつ効果的に設定する方法を学びましょう。

Kanboardのインストール

  1. Kanboardをインストールする最初のステップは、システムが最新であることを確認することです。次のコマンドを実行することでこれを行えます:
sudo apt update  
sudo apt upgrade
  1. Dockerプロジェクトのサードパーティリポジトリキーをインストールします:
sudo install -m 0755 -d /etc/apt/keyrings  
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/docker.gpg  
sudo chmod a+r /etc/apt/trusted.gpg.d/docker.gpg
  1. お気に入りのテキストエディタを使用して新しいaptリポジトリファイルを作成します:
sudo nano /etc/apt/sources.list.d/docker.list
  1. 公式Dockerリポジトリのリポジトリ情報を書き込みます:
deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable
  1. Ctrl + Oを押して新しいリポジトリファイルを保存し、次にCtrl + Xを押します。

  2. 次のコマンドを実行してシステムのリポジトリの詳細を更新します:

sudo apt update
  1. aptを使用してDockerエンジンとその依存関係をインストールします:
sudo apt install wget docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin

Kanboardの取得

Dockerエンジンが正しくインストールされたら、次にKanboardのDocker Composeスクリプトを取得します。これは、DockerにKanboardを自動的に作成する方法を指示するオプションのリストを含む小さなテキストファイルです。

  1. ホームディレクトリにKanboard用の別のフォルダーを作成します:
mkdir ~/kanboard  
cd ~/kanboard
  1. お気に入りのテキストエディタを使用して「docker-compose.yml」という名前の新しいテキストファイルを作成します:
nano ~/kanboard/docker-compose.yml
  1. 次のコードブロックをコピーして「docker-compose.yml」ファイル内に貼り付けます:
version: '2'  
services:  
  kanboard:  
    image: kanboard/kanboard:latest  
    ports:  
      - 8080:80  
    volumes:  
      - kanboard_data:/var/www/app/data  
      - kanboard_plugins:/var/www/app/plugins  
    environment:  
      DATABASE_URL: mysql://kanboard:!#REPLACE-ME@db/kanboard  
      PLUGIN_INSTALLER: true  
  db:  
    image: mariadb:latest  
    command: --default-authentication-plugin=mysql_native_password  
    environment:  
      MYSQL_ROOT_PASSWORD: !#REPLACE-ME  
      MYSQL_DATABASE: kanboard  
      MYSQL_USER: kanboard  
      MYSQL_PASSWORD: !#REPLACE-ME  
    volumes:  
    - db:/var/lib/mysql  
volumes:  
  kanboard_data:  
  kanboard_plugins:  
  db:
  1. 新しいターミナルを開き、次のコマンドを使用して安全なパスワードを生成します:
cat /dev/urandom | tr -dc 'A-Za-z0-9' | fold -w 16 | head -n 1
  1. 前のターミナルに戻り、ファイル内の「#!REPLACE-ME」のすべてのインスタンスに安全なパスワードを貼り付けます。

Kanboard用の動作中のDocker Composeファイルを示すターミナル

  1. Ctrl + Oを押して「docker-compose.yml」ファイルを保存し、次にCtrl + Xを押して終了します。

  2. 次のコマンドを実行してKanboardのDockerコンテナをビルドできます:

docker compose up -d

Docker Composeのビルドプロセスを示すターミナル

知っておくと良いこと: Obsidian.mdを使用してオフラインカンバンボードを作成する方法を学びましょう。

KanboardのSSL設定

この時点で、部分的に動作しているKanboardのインストールがあります。ただし、安全にアクセスするには、最初にNginxリバースプロキシを作成する必要があります。これが、負荷分散とSSLを提供するウェブ向けサーバーとして機能します。

  1. Nginxウェブサーバーをインストールします:
sudo apt install nginx
  1. Nginxリバースプロキシ用のサイト設定ファイルを作成します:
sudo nano /etc/nginx/sites-available/kanboard
  1. 新しいサイト設定ファイル内に次のコードブロックをコピーして貼り付けます:
server {  
    listen 80;  
    listen [::]:80;  
  
    root                    /var/www/html;  
    server_name             my-kanban-domain-url.com;  
  
    location / {  
        proxy_set_header    X-Forwarded-For $remote_addr;  
        proxy_set_header    Host $http_host;  
        proxy_pass          http://localhost:8080;  
}  
}

注意: 「my-kanban-domain-url.com」を実際のドメイン名に置き換えてください。

  1. Kanboardリバースプロキシのシンボリックリンクを作成します:
sudo ln -s /etc/nginx/sites-available/kanboard /etc/nginx/sites-enabled/kanboard
  1. Nginxサービスデーモンを再読み込みします:
sudo systemctl reload nginx.service

Kanboard用のSSL証明書の取得

リバースプロキシが立ち上がったので、Kanboard用のSSL証明書をリクエストできます。このセクションでは、電子フロンティア財団(EFF)のCertbotを通じて無料の証明書を取得する方法を示します。

  1. まず、システムのコアスナップデーモンをインストールして更新する必要があります:
sudo snap install core  
sudo snap refresh core
  1. certbotスナップパッケージをインストールします:
sudo snap install --classic certbot
  1. certbotスナップバイナリとシステムのデフォルトバイナリディレクトリの間にシンボリックリンクを作成します:
sudo ln -s /snap/bin/certbot /usr/bin/certbot
  1. certbotが実行されているかテストするために、EFFに登録します:
sudo certbot register --agree-tos --email [email protected]
  1. 次のコマンドを実行してドメイン名のSSL証明書を生成します:
sudo certbot

エントリからドメインを選択すると、SSLを生成する作業を行います。

知っておくと良いこと: 自分の自己署名SSL証明書を作成することで、インターネット上の暗号化についてもっと学びましょう。

ログインしてカンバンボードを作成する

これで、Kanboardを使用してカンバンボードを作成および管理できます。そのためには、ウェブブラウザからそのドメイン名にアクセスしてKanboardインスタンスにログインします。

  1. ログイン画面でユーザー名とパスワードに「admin」を使用します。
  2. 「新しいプロジェクト」をクリックして公開カンバンボードを作成します。

Kanboardサーバーの「新しいプロジェクト」リンクを強調表示したスクリーンショット

  1. 新しいボードの名前とURLスラッグを提供します。
  2. ページの左サイドバーで「公開アクセス」をクリックします。

カンバンボードの「公開アクセス」リンクを強調表示したスクリーンショット

  1. 青い「公開アクセスを有効にする」ボタンをクリックします。これにより、RSSフィードと非Kanboardユーザーと共有できる公開リンクが作成されます。

Kanboardの「公開アクセスを有効にする」ボタンを示すスクリーンショット

  1. ページの左上隅にある「ボード」ボタンをクリックして、ボードにアクセスし、新しいアイテムを作成します。

動作中の公開カンバンボードを示すスクリーンショット

コラボレーティブカンバンボード用のユーザーを作成する

公開アクセス可能な「表示専用」ボードを共有するだけでなく、Kanboardを使用して複数のローカルユーザー間でコラボレーティブな「タスク」ボードを作成することもできます。

  1. ページの右上隅にある管理者ユーザーのアイコンをクリックし、「ユーザー管理」を選択します。

ダッシュボードの「ユーザー管理」サブメニューを強調表示したスクリーンショット

  1. ページの左上サイドバーにある「新しいユーザー」リンクをクリックします。
  2. これにより、Kanboardが新しいユーザーのユーザー名とパスワードを尋ねる小さなダイアログプロンプトが表示されます。

Kanboardの新しいユーザーフォームを示すスクリーンショット

  1. プロンプトの下部までスクロールし、「プロジェクト」カテゴリの下にあるドロップダウンボックスをクリックします。

Kanboardの「新しいユーザー」フォーム内の「プロジェクト」サブカテゴリを示すスクリーンショット

  1. ユーザーが参加するカンバンボードを選択します。

新しいユーザーのボード選択を示すスクリーンショット

  1. 「保存」をクリックして新しいユーザーアカウントを作成します。

新しいユーザーのプロンプトの保存ボタンを示すスクリーンショット

プラグインを使ってカンバンボードをカスタマイズする

Kanboardの素晴らしい機能の一つは、基本機能を超えてボードを拡張するためのフレームワークを提供することです。これにより、サーバーにカスタム機能を含めるために開発者に依存する必要がなくなります。

  1. 新しいプラグインを追加するには、ページの右上隅にある管理者ユーザーのアイコンをクリックし、「プラグイン」を選択します。

管理者ユーザーのダッシュボード内の「プラグイン」サブカテゴリを強調表示したスクリーンショット

  1. ページの左サイドバーで「プラグインディレクトリ」カテゴリをクリックします。

プラグインサブメニュー内の「プラグインディレクトリ」サブカテゴリを示すスクリーンショット

  1. Kanboardサーバーにインストールしたいプラグインを見つけます。私の場合、サーバーの基本的なMarkdownを拡張するために「MarkdownPlus」をインストールします。

Kanboardの利用可能なプラグインを示すスクリーンショット

  1. 「インストール」をクリックし、プラグインをサーバーに正しく読み込むためにウェブページを更新します。

参考情報: カンバンはタスクやデータを管理する唯一の方法ではありません。今日、Todoistを使用してTo Doリストやデータを最適化する方法を学びましょう。

よくある質問

カンバンボードの内容をバックアップすることは可能ですか?

はい。特定のカンバンボードをバックアップするには、エクスポートしたいボードの歯車アイコンをクリックし、「エクスポート」をクリックします。

これにより、エクスポートしたい日付範囲を尋ねる小さなプロンプトが表示されます。開始日と終了日を提供し、「エクスポート」をクリックします。

カンバンボードの「ロックダウン」期間をリセットすることは可能ですか?

はい。特定のユーザーのロックアウトタイマーをリセットすることが可能です。これを行うには、ページの右上隅にある管理者ユーザーのアイコンをクリックします。次に、「ユーザー管理」項目を選択し、ロックアウトされたユーザーの名前をクリックします。最後に、「セキュリティ」カテゴリに移動し、「このユーザーを解除」をクリックします。

Kanboardコンテナ内のconfig.phpファイルを変更することは可能ですか?

はい。ただし、これを行うとDockerイメージの一貫性が損なわれる可能性があります。代わりに、プログラムの開発者は、Kanboardインスタンスの値を設定する際にdocker-compose.ymlファイル内の環境変数を使用することを推奨しています。

画像クレジット: Eden Constantino via Unsplash. すべての変更とスクリーンショットはRamces Redによるものです。