Uptime Kuma Docker Composeビルダー
Uptime Kuma用のcompose.yamlを作成します。イメージのバージョンとバリアント、ポート、データの保存場所、Docker監視、SQLiteまたはMariaDBデータベースを選択すると、そのまま実行できるファイルを取得できます。
入力
出力
- NFSなどのファイルシステムはデータの保存場所としてサポートされていません。ローカルフォルダーまたはDockerボリュームを使用してください。
Readme
Uptime Kumaとは?
Uptime Kumaは、自ホスト型の監視ツールです。一定間隔でウェブサイト、TCPポート、DNSレコード、Dockerコンテナなどをチェックし、何かが停止したときに通知を送信して、ステータスページを公開できます。このプロジェクトでは、ポート3001で待ち受け、すべてを/app/dataフォルダーに保存する公式イメージlouislam/uptime-kumaが提供されています。
ツールの説明
このツールは、Uptime Kuma用のcompose.yamlを作成します。Uptime Kumaリポジトリにあるファイルをベースに、通常必要となる設定を追加します。具体的には、イメージのバージョンとバリアント、ホストポートとバインドアドレス、データの保存場所、Dockerホストモニター用のDockerソケットへのアクセス、データベースなどです。MariaDBを専用コンテナで使用する場合、このツールはヘルスチェック付きの2つ目のサービスを追加するため、データベースの準備が完了してからUptime Kumaが起動します。フォームに入力欄がない設定は、環境変数として追加できます。すべてブラウザー上で作成できます。
機能
2、1、betaのイメージタグ、およびバージョン2のstandard、slim、rootless、slim rootlessバリアント- ホストポートと、リバースプロキシの背後で使用する場合の
127.0.0.1などのバインドアドレス - ホスト上のデータフォルダーまたは名前付きDockerボリューム。ボリュームは自動的に宣言されます
- Dockerホストモニター用の
/var/run/docker.sockへのオプションのアクセスと、それによって可能になる操作についての警告 - SQLite、組み込みMariaDB、ファイルに追加されるMariaDBコンテナ、または外部MariaDBサーバー
- 生成されたデータベースパスワード。Composeでそのまま保持されるよう、
$記号はエスケープされます - iframeへの埋め込み、WebSocketのオリジンチェック、Cloudflare Tunnelのtokenに関するオプション
- その他の環境変数、ファイルの内容を説明するコメント、
compose.yamlとしてのダウンロード
例
デフォルト設定では、Uptime Kumaリポジトリにあるものと同じファイルが作成されます。
services:
uptime-kuma:
image: louislam/uptime-kuma:2
ports:
- "3001:3001"
volumes:
- ./data:/app/data
restart: unless-stoppedデータベースとしてMariaDBコンテナを選択すると、mariadbサービスが追加され、UPTIME_KUMA_DB_TYPE、UPTIME_KUMA_DB_HOSTNAME、その他のUPTIME_KUMA_DB_*変数によってUptime Kumaが接続されます。
ヒント
- 結果を空のフォルダーに
compose.yamlとして保存し、docker compose up -dで起動します。その後、http://localhost:3001を開きます - NFSなどのファイルシステムはデータフォルダーではサポートされていません。ローカルフォルダーまたはDockerボリュームを使用してください
- slimイメージには、実ブラウザモニターに必要なChromiumが含まれておらず、組み込みMariaDBも含まれていません
- rootlessイメージはUID 1000の
nodeユーザーとして実行されるため、ホスト上のデータフォルダーはそのユーザーが書き込み可能でなければなりません - Uptime KumaはWebSocketsを使用します。リバースプロキシの背後に配置する場合、プロキシは
UpgradeヘッダーとConnectionヘッダーを通過させる必要があります - Dockerソケットにより、Uptime Kumaはホスト上のDockerを完全に制御できます。Dockerホストモニターが必要な場合にのみマウントし、Uptime Kumaをインターネットに公開しないでください
- バージョン1はSQLiteのみをサポートするため、データベースのオプションは表示されません
- パスワードフィールドの内容はファイルに平文で保存されます。ファイルを非公開にするか、パスワードを
.envファイルに移動して${DB_PASSWORD}として参照してください