Cloudflare Tools — Cloudflare 一括管理ツール

DevOps

概要

Cloudflare-Tools は Cloudflare のアカウントを対象にした一括管理用の Web アプリケーションです。機能はドメインの一括追加、DNS レコードのバッチ登録(ドメインごとに異なる IP 割当も可)、SSL 設定、Firewall やルールの適用、キャッシュのクリアなど多岐に渡ります。バックエンドは Go + Gin を採用し、高速な並列処理や API 呼び出しの制御に強みがあります。フロントエンドは原生 JavaScript と Vite で軽量に実装されており、運用者がブラウザから手早く複数ドメインを管理できる点が特徴です。CI/CD・コンテナ化による運用や、Cloudflare API トークンによる安全な認証を想定した設計になっています。

GitHub

リポジトリの統計情報

  • スター数: 10
  • フォーク数: 2
  • ウォッチャー数: 10
  • コミット数: 2
  • ファイル数: 6
  • メインの言語: JavaScript

主な特徴

  • 複数ドメインの一括追加・管理が可能(バルク操作)
  • DNS レコードをドメインごとに個別 IP へ割当てる柔軟なバッチ登録
  • SSL、ルール(Firewall/Workers/ページルール等)、キャッシュ操作の統合管理
  • 軽量フロントエンド(原生 JS + Vite)と高並列なバックエンド(Go + Gin)

技術的なポイント

このプロジェクトは Cloudflare API を中核に据え、フロントエンドからの操作を安全に受け取って複数 API 呼び出しを効率よく実行する設計が特徴です。バックエンドに Go(Gin)を用いることで、goroutine による並列処理やワーカープールで大量のドメイン・レコードを同時に処理できます。Cloudflare はレート制限(429)やページネーションが存在するため、リトライ(指数バックオフ)やレスポンスのページネーション対応、エラー集約の仕組みが重要になります。本リポジトリはこれらを想定したバッチ処理の雛形になっており、API トークンはサーバ側で管理してフロントエンドには直接渡さない方式が推奨されます。

フロントエンドは原生 JavaScript と Vite による構成で、余計な依存を抑えつつ動的な操作 UI を実現しています。長時間かかるバッチ操作に対してはバックグラウンドジョブ化やステータス返却(ジョブ ID)を追加すると良く、WebSocket やポーリングで進捗表示する拡張が可能です。運用面では環境変数やシークレットマネージャ(Vault、Secrets Manager)で API トークンを安全に保管し、ログや監査の出力を整備することで誤操作の追跡が容易になります。

さらに、コンテナ化(Docker)と CI/CD による自動デプロイ、ロールベースアクセスや操作の「ドライラン」機能、失敗時のロールバックや再実行戦略を導入すると運用の安全性が向上します。現在の構成はシンプルで導入は容易ですが、スケールや高可用性を求める場合はキュー(Redis / RabbitMQ)を使った非同期処理や、ジョブ管理ダッシュボードの追加を検討すると良いでしょう。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: file
  • Frontend: dir
  • LICENSE: file
  • README.md: file
  • Server: dir

…他 1 ファイル

まとめ

Cloudflare の複数リソースを一括で操作できる実務向けツール。運用の自動化に有用です。