Repository navigation
Deployment
Rumia Channel edited this page Sep 29, 2026
·
1 revision
narou.rs は 3 つの実行形態を持つ。デプロイ先ごとの差分と切替方法をまとめる。
| Native | SORAHOST | Cloudflare Workers | |
|---|---|---|---|
| 実行形態 |
narou_rs バイナリ (x86_64 / aarch64, win / linux / mac) |
PteWorker (node モード) コンテナ内の narou_rs
|
workers-rs (worker_entry) の fetch/queue/scheduled |
| 入口 | narou web |
sorahost.json → start.sh → narou_rs web
|
wrangler deploy → shim.mjs
|
| 公開 |
server-bind / server-port
|
PteWorker が PORT にループバック転送 + 公開 URL |
workers.dev / custom domain / Access |
| メタデータ・本文 | .narou/db.sqlite |
.narou/db.sqlite |
D1 |
| 挿絵 | ローカル FS | S3 (NAROU_RS_ASSET_BACKEND=s3) またはローカル |
S3 (bindings S3_*) |
| EPUB | AozoraEpub3 (外部 jar / Lite exe) または組み込み Lite | 組み込み Lite (convert.epub-engine=lite) |
組み込み Lite (ストリーミング出力) |
| Queue / 進捗 |
src/web/queue.rs + WebSocket (/ws) |
同左 | Queue (producer/consumer) + PUSH_HUB DO + /api/push/events
|
| 認証 | basic / server-*
|
basic + 前段コネクタ + Access | Bearer NAROU_ADMIN_TOKEN + Access |
narou_rs_login |
使える | 不可 (ブラウザのある端末で実行→narou login import) |
不可 |
| self-update |
narou update (本体を置き換える) |
使わない (CI 再配備) | 使わない (CI 再配備) |
CI の分岐を担うワンスイッチ。
-
SORAHOST=T…deploy-sorahost.ymlが走り、Workers 側のジョブ (wasm / worker / worker-contract / relay-deploy / worker-deploy-*) を全部止める -
SORAHOSTがFまたは未設定 … SORAHOST 配備は止まり、Workers 側だけが動く - 値は GitHub の Repository variables に置く (Environment
SORAHOSTではない。同名を Environment に置くと判定と混ざる)
| きっかけ | 作るもの | |
|---|---|---|
| Native |
cargo build / release tag |
target/{release,debug} または GitHub Release の zip |
| SORAHOST |
develop push / Deploy SORAHOST の手動実行 |
narou_rs (lite) + narou_rs_backup + webnovel/ + start.sh + sorahost.json
|
| Workers |
develop push / v* tag / workflow_dispatch
|
wrangler deploy の shim + D1 migrations + Queue + 静的アセット (public/) |
- SORAHOST: Deploy-SORAHOST
- Cloudflare Workers: Deploy-Cloudflare-Workers
- 環境変数一覧: Environment-Variables
sorahost/README.mddocs/cloudflare-workers-migration-plan.md-
COMMANDS.md/AGENTS.md