Repository navigation
Environment Variables
Rumia Channel edited this page Sep 30, 2026
·
6 revisions
環境変数・CI の値を 置き場と読み手で整理した一覧。
まずここ: 設定には CI が使う値 と アプリが使う値 の 2 系統がある。
- CI が使う値 → GitHub の Environment (
SORAHOST/Cloudflare) に置く- アプリが使う値 → SORAHOST はサーバー上の
.env、Worker は secret /[vars]に置く手順つきの案内は Deploy-SORAHOST / Deploy-Cloudflare-Workers を先に読む。 このページは「名前が分かっているが、どこに置くか知りたい」ときの索引。
同じ名前でも読み手によって意味が違うものがある (例: S3_* は native の環境変数でもあり、
Worker の binding 名でもある) ので、まず置き場で分ける。
| 置き場 | 読み手 | 例 |
|---|---|---|
| GitHub Repository variables | CI の分岐 |
SORAHOST, SORAHOST_RELAY_START
|
GitHub Environment SORAHOST
|
deploy-sorahost.yml |
SORAHOST_ENDPOINT, SORAHOST_TOKEN, SORAHOST_*, CLOUDFLARE_*
|
GitHub Environment Cloudflare
|
platform.yml の worker-deploy-* |
CLOUDFLARE_*, NAROU_*, SORAHOST_PROXY_*, CF_ACCESS_*, *_DOMAIN
|
GitHub Environment CodeSining
|
release.yml の署名 |
CERTUM_* |
SORAHOST サーバー .env
|
start.sh → narou_rs
|
NAROU_WEB_*, NAROU_RS_*, S3_*, NAROU_CONNECTOR_*, NAROU_PUBLIC_HOST
|
Worker secret / [vars]
|
wrangler deploy で焼き込み / Worker 実行時 |
NAROU_ADMIN_TOKEN, NAROU_RS_LOGIN_KEY, S3_*
|
.dev.vars (Worker ローカル) |
wrangler dev |
NAROU_ADMIN_TOKEN, NAROU_AUTH_REQUIRED
|
| 名前 | 必須 | 効果 |
|---|---|---|
SORAHOST |
✅ (T で有効) |
T で SORAHOST 配備を有効にし、Workers CI を止める |
SORAHOST_RELAY_START |
リレー同居時 | リレーの起動コマンドを narou 側に寄せる |
詳細は Deploy-SORAHOST §3.2。
| 種類 | 名前 | 必須 | 用途 |
|---|---|---|---|
| secret | SORAHOST_ENDPOINT |
✅ | PteWorker のエンドポイント |
| secret | SORAHOST_TOKEN |
✅ |
sorahost-cli deploy の Authorization: Bearer
|
| secret | SORAHOST_SMOKE_URL |
任意 | 配備後の確認先 |
| secret | CLOUDFLARE_API_TOKEN |
§2-A を使うとき | コネクタ / DNS / Access を作る |
| secret | CLOUDFLARE_ACCOUNT_ID |
同上 | アカウント ID |
| secret | SORAHOST_PUBLIC_HOSTNAME |
同上 | 公開ホスト名 |
| secret | SORAHOST_SERVICE_PORT |
同上 | コネクタの向き先ポート (既定 18080) |
| secret | SORAHOST_CONNECTOR_NAME |
同上 | 既定 narou-sorahost
|
| secret |
SORAHOST_ACCESS_EMAIL / _DOMAIN / _SESSION
|
同上 | Access の許可範囲・期限 |
詳細は Deploy-SORAHOST §3.1。start.sh が起動時に読み、既に環境にある値が優先される。
ひな形は sorahost/narou.env.example。
| 名前 | 必須 | 何のため |
|---|---|---|
NAROU_WEB_PASSWORD |
✅ 素の公開。コネクタ時は任意 | basic 認証パスワード |
NAROU_WEB_USER |
任意 | basic 認証ユーザ名 (既定 admin) |
NAROU_ALLOW_NO_PASSWORD |
任意 |
1 で認証なし起動を許可 (コネクタなし時) |
NAROU_RS_ASSET_BACKEND |
S3 時 |
s3 で挿絵だけ S3 |
S3_ENDPOINT / S3_REGION / S3_BUCKET / S3_PREFIX
|
S3 時 | S3 接続先 (native の読み名) |
S3_ACCESS_KEY_ID / S3_SECRET_ACCESS_KEY
|
S3 時 | S3 資格情報 |
NAROU_RS_LOGIN_KEY |
任意 | Cookie 暗号鍵 (既定 .narou/login.key) |
NAROU_RS_MIRROR_FILES |
任意 |
0 で 小説データ/ に実ファイルを書かない |
NAROU_RS_SECTION_CACHE |
任意 |
0 で話ごとの変換キャッシュを作らない |
NAROU_RS_KEEP_TXT |
任意 |
0 で変換済みテキストを残さない (EPUB は都度再変換) |
NAROU_RS_LEGACY_YAML |
任意 |
1 で YAML 管理に戻す |
NAROU_RS_EPUB_ENGINE |
任意 | EPUB エンジン |
NAROU_RS_APP / NAROU_RS_LIBRARY / NAROU_RS_PORT / NAROU_RS_ENV_FILE
|
任意 | 配置・ポート・env パス (自動) |
NAROU_RELAY / SORAHOST_PROXY_KEY
|
リレー同居時 | 取得リレーの起動・合言葉 |
NAROU_CONNECTOR_TOKEN / NAROU_CONNECTOR_TOKEN_FILE / NAROU_PUBLIC_HOST
|
コネクタ使用時 | コネクタ起動・公開 Host 固定 |
詳細は Deploy-Cloudflare-Workers。
-
[vars]…S3_ENDPOINT/S3_REGION/S3_BUCKET/S3_PREFIX/NAROU_AUTH_REQUIRED - Worker secret …
NAROU_ADMIN_TOKEN/NAROU_RS_LOGIN_KEY/S3_ACCESS_KEY_ID/S3_SECRET_ACCESS_KEY - Secrets Store …
<NAME>_STOREbinding (b モード) -
env.var→env.secretの順に解決
| 名前 | 必須 | 用途 |
|---|---|---|
CLOUDFLARE_API_TOKEN |
✅ |
wrangler 用トークン |
CLOUDFLARE_ACCOUNT_ID (CLOUDFLARE_ACCOUT_ID でも可) |
✅ | アカウント ID |
SERVICE_DOMAIN |
production | production の custom domain |
DEVELOP_DOMAIN |
任意 | develop の custom domain |
NAROU_ADMIN_TOKEN |
Zero Trust が境界なら不要 | Worker API Bearer |
NAROU_RS_LOGIN_KEY |
任意 | Cookie 暗号鍵 (base64) |
NAROU_S3_ACCESS_KEY_ID / NAROU_S3_SECRET_ACCESS_KEY
|
任意 | S3 資格情報 |
CF_ACCESS_CLIENT_ID / CF_ACCESS_CLIENT_SECRET
|
任意 | Access service token |
| 名前 | 必須 | 用途 |
|---|---|---|
NAROU_AUTH_REQUIRED |
任意 | Bearer 検査の on/off (既定 true) |
NAROU_WORKERS_DEV |
任意 | workers.dev の開閉 (route があれば false) |
NAROU_S3_ENDPOINT / NAROU_S3_REGION / NAROU_S3_BUCKET
|
(a) で必須 | S3 接続先 |
NAROU_S3_PREFIX |
任意 | キー前置 (既定 narou/<target>。設定しない) |
NAROU_SECRETS_STORE_ID |
(b) で必須 | Secrets Store ID |
NAROU_S3_*_SECRET_NAME (5 つ) |
(b) で必須 | Cloudflare 側の secret 名 |
NAROU_ADMIN_TOKEN_SECRET_NAME / NAROU_RS_LOGIN_KEY_SECRET_NAME
|
任意 | ストアに置くとき |
NAROU_D1_BASE_NAME / NAROU_JOB_QUEUE_BASE
|
任意 | リソース名の接頭辞 |
NAROU_DEPLOY_URL |
任意 | smoke の宛先 |
NAROU_SMOKE |
任意 |
0 で smoke 省略 (既定 1) |
worker_entry が実行時に参照する値:
| 名前 | 必須 | 意味 |
|---|---|---|
NAROU_ADMIN_TOKEN |
Bearer 認証時 | Bearer 照合 (定数時間比較)。auth 有効で未設定なら 500 authentication_not_configured
|
NAROU_RS_LOGIN_KEY |
任意 | Cookie AEAD 鍵。native の .narou/login.key と同値で共有できる |
NAROU_AUTH_REQUIRED |
任意 |
true で Bearer 必須 (既定)。false は Zero Trust 前提 |
S3_ENDPOINT / S3_REGION / S3_BUCKET / S3_PREFIX
|
(a) モード時 | S3 接続先 |
S3_ACCESS_KEY_ID / S3_SECRET_ACCESS_KEY
|
(a) モード時 | S3 資格情報 |
NAROU_S3_*_STORE |
(b) モード時 | Secrets Store 経由のバインディング名 |
SORAHOST_PROXY_ENDPOINT / SORAHOST_PROXY_KEY
|
任意 | 取得リレー (fetch を弾くサイト向け) |
NAROU_D1_* / NAROU_JOB_*
|
— (自動) |
provision_resources.py が算出するリソース名 |
| 名前 | 必須 | 意味 |
|---|---|---|
NAROU_RS_LEGACY_YAML |
任意 |
1 で SQLite を無効化して YAML 管理に戻す |
NAROU_RS_EPUB_ENGINE |
任意 | EPUB エンジン (convert.epub-engine を上書き) |
NAROU_RS_LOGIN_KEY |
任意 | Cookie 暗号鍵 |
NAROU_ADMIN_TOKEN |
— | Worker 系の値 (native では通常使わない) |
- Deployment / Deploy-SORAHOST / Deploy-Cloudflare-Workers
-
sorahost/narou.env.example….envのひな形 -
docs/cloudflare-workers-migration-plan.md§2.2.8 … Workers CI の全一覧
sorahost/README.mddocs/cloudflare-workers-migration-plan.md-
COMMANDS.md/AGENTS.md