対応アプリ種類
TODO(内部向け・リリース前に対応して削除)
Section titled “TODO(内部向け・リリース前に対応して削除)”Keelson で動かせるアプリとは
Section titled “Keelson で動かせるアプリとは”Keelson は、社内やチームで共有する Web アプリ・API・定期実行ジョブを安全にデプロイ・公開するための実行基盤です。
AI(ChatGPT、Claude、Manus など)で生成した小〜中規模の業務アプリに特に向いています。
想定しているアプリの例:
- 社内ツール — 顧客管理、案件管理、在庫管理など
- 管理画面 — データの閲覧・編集用ダッシュボード
- 連携アプリ — Slack / Notion / Google Sheets との自動連携
- 軽量な自動化処理 — CSV取込、定期集計、通知バッチ
- バックオフィス向けアプリ — 承認申請、日報・レポート生成
対応しているアプリの例
Section titled “対応しているアプリの例”顧客管理・案件管理アプリ
Section titled “顧客管理・案件管理アプリ”フォーム+一覧表示+SQLite。CRUD 操作が中心の典型的な業務アプリで、Keelson のデータ永続化(/data)がそのまま使えます。
社内 FAQ / 検索アプリ
Section titled “社内 FAQ / 検索アプリ”テキスト検索 UI+バックエンド API。社内ナレッジを検索・閲覧するためのアプリで、認証付きで安全に社内公開できます。
CSV 取込・整形ツール
Section titled “CSV 取込・整形ツール”ファイルアップロード+加工処理+ダウンロード。定型業務の自動化に最適で、Keelson なら非エンジニアにも URL を共有するだけで使ってもらえます。
承認申請アプリ
Section titled “承認申請アプリ”フォーム送信+ステータス管理+通知。ワークフロー系の小さなアプリで、チーム内のメンバー管理と組み合わせてアクセス制御できます。
日報・レポート生成
Section titled “日報・レポート生成”入力フォーム+テンプレート出力。日次・週次の報告を定型化するアプリで、定期実行ジョブ(cron)と組み合わせて自動集計も可能です。
Slack / Notion / Google Sheets 連携
Section titled “Slack / Notion / Google Sheets 連携”Webhook 受信+API 呼び出し。外部サービスとのデータ連携を行うアプリで、Web アプリ+定期ジョブの組み合わせで構成できます。
定期集計バッチ
Section titled “定期集計バッチ”cron ジョブのみで動く構成。売上集計、ログ解析、通知送信など、UI なしで定期実行だけを行うケースにも対応しています。
AI チャット / 社内 RAG の UI
Section titled “AI チャット / 社内 RAG の UI”チャット UI+LLM API 呼び出し。社内向けの AI アシスタントを、認証付きで安全にチームに提供できます。
対応ランタイム / フレームワークの考え方
Section titled “対応ランタイム / フレームワークの考え方”Keelson は特定のフレームワーク専用の PaaS ではありません。HTTP サーバーとして起動する標準的な構成のアプリであれば、フレームワークを問わず動かせます。
対応ランタイム
Section titled “対応ランタイム”| ランタイム | 用途 |
|---|---|
python-slim | 軽量な Python アプリ(API、テキスト処理など) |
python-media | メディア処理向け Python(画像・動画ライブラリ含む) |
node-slim | 軽量な Node.js アプリ |
node-media | メディア処理向け Node.js |
go-slim | 軽量な Go アプリ |
go-media | メディア処理向け Go |
動かせるアプリの形態
Section titled “動かせるアプリの形態”- Web アプリ — HTTP サーバーとして起動し、ブラウザからアクセスするもの
- API サーバー — JSON API を提供するバックエンド
- 定期実行ジョブ(cron) — スケジュールに従って定期的にコマンドを実行するもの
- ワーカープロセス — Web アプリと並行して動くバックグラウンド処理
フレームワークの例: FastAPI、Flask、Express、Next.js、Hono、Gin など。keelson.yaml の command で起動できるものであれば動作します。
向いているケース
Section titled “向いているケース”以下に当てはまるなら、Keelson が適しています。
- 社内利用が前提 — チームや社内のメンバーに限定して公開したい
- 認証をかけて安全に公開したい — ログイン保護をアプリに実装せずに済ませたい
- 小さなアプリを複数動かしたい — 1つのワークスペースで複数アプリを管理できる
- SQLite やファイル保存を使いたい —
/dataへの永続化がプラットフォーム標準で使える - AI に作らせたアプリをまず動かしたい — Dockerfile 不要、
keelson.yamlだけでデプロイできる - 開発者以外にも見せたい — URL を共有するだけで、非エンジニアもブラウザからアクセスできる
向いていないケース
Section titled “向いていないケース”以下のようなケースには、Keelson は最適ではありません。
- 超高トラフィックな一般公開サービス — 大規模なコンシューマー向けサービスは想定外
- 厳しい低レイテンシが必要な edge 寄りの用途 — CDN エッジでの実行には非対応
- 複雑な分散システム — マイクロサービス間の高度なオーケストレーションには向かない
- GPU 前提の重い推論基盤 — GPU インスタンスは提供していない
- 特殊なミドルウェア前提の構成 — Redis、PostgreSQL(外部)、Kafka などを自前で構成する必要がある場合
- 厳密なネットワーク制御や専有インフラが必須 — VPC ピアリング、専用ノードなどが初期要件の場合
判断チャート: あなたのアプリは Keelson 向きか
Section titled “判断チャート: あなたのアプリは Keelson 向きか”以下の質問に順番に答えてください。3分で判断できます。
1. 利用者は社内・チームメンバーが中心ですか? → いいえ → 不特定多数への公開サービスには向いていません
2. アプリは Web UI または API を提供しますか? → いいえ → 定期実行ジョブ(cron)だけの構成でも対応可能です。それ以外の形態は対象外です
3. Node.js / Python / Go のいずれかで動きますか? → いいえ → 現時点ではこの3つのランタイムに対応しています
4. GPU や特殊なミドルウェア(Redis、Kafka など)は必要ですか? → はい → 現時点では対応していません
5. 専有インフラや厳密なネットワーク制御は初期要件ですか? → はい → Enterprise プランでの対応を検討中です。お問い合わせください
すべてクリアした場合 → Keelson で動かせます。
最小サンプル
Section titled “最小サンプル”もっとも単純な構成でデプロイする例を示します。
Python(FastAPI)
Section titled “Python(FastAPI)”ディレクトリ構成:
my-app/├── keelson.yaml├── requirements.txt└── app.pykeelson.yaml:
slug: my-appruntime: python-slimcommand: "pip install --user -r requirements.txt && python app.py"env: PORT: "8080"app.py:
from fastapi import FastAPIimport uvicorn, os
app = FastAPI()
@app.get("/")def index(): return {"message": "Hello from Keelson"}
if __name__ == "__main__": uvicorn.run(app, host="0.0.0.0", port=int(os.environ.get("PORT", 8080)))Node.js(Express)
Section titled “Node.js(Express)”ディレクトリ構成:
my-app/├── keelson.yaml├── package.json└── index.jskeelson.yaml:
slug: my-appruntime: node-slimcommand: "npm install && npm start"env: PORT: "8080" NODE_ENV: productionindex.js:
const express = require("express");const app = express();const port = process.env.PORT || 8080;
app.get("/", (req, res) => { res.json({ message: "Hello from Keelson" });});
app.listen(port, "0.0.0.0", () => { console.log(`Listening on port ${port}`);});デプロイが完了すると、https://my-app.keelson.run/ のような URL が発行されます。この URL にアクセスすると、ログイン済みのメンバーだけがアプリを利用できます。
よくある質問
Section titled “よくある質問”Dockerfile は必要ですか?
Section titled “Dockerfile は必要ですか?”不要です。keelson.yaml でランタイムと起動コマンドを指定するだけでデプロイできます。Keelson がビルドと実行環境の構築を行います。
フロントエンド単体(静的サイト)も置けますか?
Section titled “フロントエンド単体(静的サイト)も置けますか?”はい。keelson.yaml で assets を設定すれば、ビルド済みの静的ファイルをホストできます。
API だけでもよいですか?
Section titled “API だけでもよいですか?”はい。UI を持たない JSON API サーバーも問題なくデプロイできます。