インストールガイド · 1 min read · Oct 26, 2025
Debian 12にCachetステータスページシステムをインストールする方法

Cachetは、PHPで書かれたオープンソースのステータスページシステムです。インフラストラクチャのダウンタイムやシステム障害を監視することができます。Cachetは、JSO API、レポート、メトリクス、複数の通知方法、二要素認証を提供します。
以下のチュートリアルでは、Debian 12サーバーにCachetステータスページをインストールする方法を示します。Cachetは、PostgreSQLデータベースとNginxウェブサーバーを使用してDockerコンテナとして実行します。
前提条件
進む前に、以下のものを用意してください:
- Debian 12サーバー。
- sudo権限を持つ非rootユーザー。
- UFWがインストールされ、設定されていること。
- サーバーIPアドレスにポイントされたドメイン名。
Dockerエンジンのインストール
この例では、Docker経由でCachetをコンテナとしてインストールします。したがって、DebianシステムにDockerエンジンをインストールする必要があります。この例では、公式のDockerエンジンパッケージを使用します。
まず、以下のコマンドを実行してcurlとca-certificatesパッケージをインストールします。
sudo apt install ca-certificates curl -y次に、以下のコマンドを実行してDockerリポジトリのGPGキーを追加します。
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc次に、以下のコマンドを使用してDebianシステムのDockerエンジンリポジトリを追加します。
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullDockerリポジトリが追加されたら、以下のコマンドでパッケージインデックスを更新およびリフレッシュします。
sudo apt update
次に、以下のコマンドでシステムにDockerエンジンをインストールします。インストールを確認するためにYと入力します。
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
インストールが完了すると、Dockerサービスは自動的に実行されるはずです。以下のコマンドでDockerサービスのステータスを確認します。
sudo systemctl status docker以下のような出力が表示されます:

ユーザーがコンテナを実行できるようにするために、以下のコマンドでdockerグループに追加する必要があります。
sudo usermod -aG sudo alice最後に、ユーザーとしてログインし、以下のdockerコマンドを実行してhello-worldコンテナを実行します。
su - alice
docker run hello-world設定が成功すれば、以下のように’Hello Docker’という出力が得られるはずです:

DockerとPostgreSQLデータベースでCachetを実行する
Dockerをインストールしたら、Cachetプロジェクトをダウンロードしてインストールを構成する必要があります。この場合、非rootユーザーとしてDockerコンテナでCachetをインストールして実行します。
Cachetプロジェクトをcachet-dockerディレクトリにダウンロードし、そこに移動します。
git clone https://github.com/cachethq/Docker.git cachet-docker
cd cachet-docker以下のnanoエディタコマンドを使用してdocker-compose.ymlファイルを開きます。
nano docker-compose.ymlデフォルトのホストポートを8000に変更します。データベースの詳細を自分の情報でカスタマイズし、デフォルトのCachetバージョンは今のところ2.4のままにしておきます。
ports:
- 8000:8000ファイルを保存して終了します。
次に、以下のdockerコマンドを実行してCachetイメージをビルドし、CachetとPostgreSQLの両方のコンテナを実行します。
docker compose build
docker compose up以下は、CachetのDockerイメージをビルドしているときのスクリーンショットです。

以下は、CachetとPostgreSQLの両方のコンテナ/サービスを実行しているときのスクリーンショットです。

Cachetコンテナの詳細なログには、APP_KEY設定に関するエラーが表示されます。生成されたAPP_KEYをコピーし、Ctrl+cを押してコンテナを終了します。
次に、nanoエディタを使用してdocker-compose.ymlファイルを再度開きます。
nano docker-compose.ymlデフォルトのAPP_KEYパラメータを以下のように変更します。base64文字列を含めることを確認してください。
APP_KEY=base64:WfKUhY0wAOyr5hkxoctZUSWPGdXbBUWFvNLCoI7kTU8=ファイルを保存して終了します。
次に、以下のdockerコマンドを実行してCachetとPostgreSQLのコンテナを終了し、再度起動します。
docker compose down
docker compose up -dコンテナが起動したら、以下のコマンドを使用して実行中のコンテナのリストを確認します。
docker compose ps以下のように、CachetとPostgreSQLの両方のコンテナが実行中であることがわかります。Cachetコンテナはポート8000で実行されています。
Nginxをリバースプロキシとして設定する
Cachetがポート8000でコンテナとして実行されているので、NginxをCachetのリバースプロキシとしてインストールおよび設定します。
以下のコマンドを使用して、DebianサーバーにNginxをインストールします。
sudo apt install nginx -y
インストールが完了したら、以下のnanoエディタコマンドを使用して新しいNginxサーバーブロック設定/etc/nginx/sites-available/cachetを作成します。
sudo nano /etc/nginx/sites-available/cachet以下の設定を挿入し、server_nameパラメータを自分のドメイン名に変更してください。
server {
listen 80;
server_name status.howtoforge.local;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}ファイルを保存してエディタを終了します。
次に、以下のNginxコマンドを実行してCachetサーバーブロックを有効にし、Nginxの構文を確認します。構文が正しければ、’ syntax is ok ‘という出力が得られるはずです。
sudo ln -s /etc/nginx/sites-available/cachet /etc/nginx/sites-enabled/
sudo nginx -t最後に、Nginxウェブサーバーを再起動してCachetサーバーブロック設定を適用し、Nginxサービスが実行中であることを確認します。
sudo systemctl restart nginx
sudo systemctl status nginxNginxが実行中であれば、active(running)という出力が得られるはずです。

UFW(簡易ファイアウォール)の設定
Cachetにアクセスする前に、HTTPおよびHTTPSポートが許可されていることを確認する必要があります。Ubuntuでは、UFW(簡易ファイアウォール)を介してHTTPおよびHTTPSの両方へのトラフィックを許可します。
UFWが有効になっていることを確認し、以下のコマンドを実行してUFWで’ Nginx Full ‘プロファイルを有効にします。これにより、HTTPおよびHTTPSプロトコルの両方のトラフィックがNginxウェブサーバーに許可されます。
sudo ufw allow 'Nginx Full'次に、以下のコマンドを使用してUFWで有効なルールのリストを確認します。
sudo ufw status‘ Nginx Full ‘プロファイルがUFWで有効になっていることがわかります。

HTTPSでCachetを保護する
この時点で、CachetはNginxを介してアクセス可能であるはずです。インストールを保護するために、LetsencryptからSSLを介してCachetのHTTPSを有効にします。
以下のコマンドを実行してCertbotとCertbot Nginxプラグインをインストールします。インストールを確認するためにYと入力します。
sudo apt install certbot python3-nginx-certbotインストールが完了したら、以下のcertbotコマンドを実行してCachetインストール用のSSL/TLS証明書を生成します。ドメイン名とメールアドレスの詳細を自分の情報に変更してください。
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d status.howtoforge.localすべてが完了すると、SSL/TLS証明書は/etc/lestencrypt/live/status.howtoforge.localディレクトリに保存されるはずです。また、CachetはHTTPSで保護されているはずです。
Cachetのインストール
お好みのウェブブラウザを起動し、Cachetインストール先のhttps://status.howtoforge.local/にアクセスします。インストールが成功すれば、以下のページが表示されるはずです。
デフォルトのCache Driver、Queue Driver、Session DriverをDatabaseに設定します。次に、メールサーバーの詳細を入力します。
次へをクリックして続行します。

次に、ステータスページの名前、デフォルトのタイムゾーン、デフォルトの言語を設定します。再度次へをクリックします。

次に、ユーザー名、メールアドレス、パスワードを入力してCachetの新しい管理ユーザーを作成します。次に、セットアップを完了をクリックして確認します。

完了すると、以下のように表示されます - ダッシュボードに移動をクリックします。

ユーザー名とパスワードでCachetにログインし、ログインをクリックします。

インストールが成功すれば、以下のようにCachetダッシュボードが表示されるはずです:

結論
おめでとうございます!Debian 12サーバーにDockerを使用してCachetステータスページをインストールしました。CachetインストールはPostgreSQLデータベースとNginxウェブサーバーで実行されています。これでCachetを使用してサイトを監視できます。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。