本文へスキップ
Esc

設定リファレンス

このページの内容

日常的な設定のほとんどはコンソールの 設定 で変更し、データベースに保存されます。このページでは、起動時に読み込まれる設定、つまり設定ファイル config.yaml と環境変数について説明します。これらを変更したときは、Rerinku View を再起動すると反映されます。

設定ファイルと優先順位

  • 初回起動時、Rerinku View は**作業ディレクトリ(カレントディレクトリ)**に config.yaml(パーミッション 0600)を生成します。プログラムファイルのあるディレクトリではなく、起動したときのディレクトリである点に注意してください。
  • 環境変数 RERINKU_CONFIG で別のパスを指定できます。その場合、ファイルはあらかじめ存在している必要があります。
  • 優先順位:環境変数 > 設定ファイル > プログラム内蔵の既定値。値が空の環境変数は、設定されていないものとみなされます。
  • 設定ファイルに未知のキーがあると、Rerinku View は起動を拒否します。綴りを間違えた設定が黙って無視されるのを防ぐためです。
  • 設定ファイル内の相対パスは、作業ディレクトリを基準に解決されます。

初回に生成される設定ファイル:

http:
  addr: "0.0.0.0:8080"

# データベース、鍵、録画はすべてこのディレクトリに保存されます。
data_dir: "./data"

gb28181:
  enabled: true
  addr: ":5060"
  server_id: "34020000002000000001"
  realm: "3402000000"
  password: "change-me" # デバイスを接続する前に変更してください
  media: "auto"

rerinku_device:
  enabled: true
  broker_addr: "0.0.0.0:1883"

生成された設定ファイルは、LAN に対して 3 つのポートを開きます:コンソールの 8080、デバイス接続用 MQTT の 1883、GB28181 SIP の 5060 です。GB28181 は既定で有効になっており、パスワードは change-me です。GB28181 を使わない場合は gb28181.enabled を false にし、使う場合はまずパスワードを変更してください。

コンソールで変更した録画容量や保持日数などの設定はデータベースに保存され、データベースの値が優先されます。設定ファイルの値は初期値としてだけ使われます。設定 → GB28181 ページでの変更は、config.yaml の gb28181 セクションに書き戻されます。GB28181_* 環境変数も設定している場合は、再起動後に環境変数がページでの変更を上書きします。

待ち受けとアクセス制御

環境変数 設定ファイル 既定値 説明
HTTP_ADDR http.addr 0.0.0.0:8080(生成された設定ファイル) コンソール、API、ライブ映像のシグナリング、再生、デバイスの登録とストリーム送信が、このひとつのポートを共用します。プログラム内蔵の既定値は 127.0.0.1:8080 です
REQUIRE_API_AUTH — 待ち受けアドレスから導出 ローカルのループバックだけで待ち受けているときはトークンを必要とせず、それ以外のアドレスで待ち受けているときは必要とします。1 または 0 を設定すると強制できます
ALLOWED_ORIGINS server.allowed_origins 空 列挙したサイトのオリジンは同一オリジンとして扱われます。アクセスパスワードが設定されていなければ、これらのサイトの Web ページはトークンなしで API を呼び出せます。信頼できるアドレスだけを指定してください
TRUST_PROXY_HEADERS server.trust_proxy_headers false リバースプロキシの背後で動かすときは true にします。X-Forwarded-* などのリクエストヘッダーを信用して、実際のクライアントアドレスと HTTPS を判別します
SHUTDOWN_TIMEOUT server.shutdown_timeout 10s 停止時にリクエストの終了を待つ最長時間
RESET_ACCESS_PASSWORD — 空 1 にして一度起動すると、アクセスパスワードとすべてのブラウザーのログインが消去されます。その後は必ず外してください
DEMO_MODE demo_mode false デモモード:訪問者は閲覧だけでき、変更はできません。パスワード、内部ネットワークのアドレス、訪問者の IP は一切表示されません

アクセスパスワード自体は、コンソールの 設定 → セッション で設定します。リモートアクセスを参照してください。

データと録画

環境変数 設定ファイル 既定値 説明
— data_dir ./data データディレクトリ。データベースは <data_dir>/rerinkuview.db、録画は <data_dir>/recordings
DATABASE_PATH — ./data/rerinkuview.db 環境変数だけで設定する場合のデータベースのパス(設定ファイルを使う場合とファイル名が異なる点に注意)
RECORDINGS_PATH — ./data/recordings 環境変数だけで設定する場合の録画ディレクトリ
SECRET_KEY_PATH — データベースと同じディレクトリの secret.key 暗号化キー。バックアップを参照
RECORDINGS_MAX_BYTES recordings.max_bytes 100 GiB 録画の合計の上限。0 は無制限
RECORDINGS_MIN_FREE_BYTES recordings.min_free_bytes 2 GiB ディスクに最低限残しておく空き容量。0 は制限なし
RECORDINGS_RETENTION_DAYS recordings.retention_days 0(日数では削除しない) 録画を保持する最長日数。0〜3650
RECORDINGS_FILE_DURATION recordings.file_duration 10m 録画ファイル 1 つあたりの長さ。1 分〜4 時間
AUDIT_RETENTION audit.retention 2160h(90 日) 監査ログの保持期間。0 は削除しない
MODELS_PATH — データベースと同じディレクトリの models/ AI 認識のモデル
FACES_PATH — データベースと同じディレクトリの faces/ 顔ライブラリの写真
RERINKU_BIN_DIR bin_dir ~/.rerinku/bin 内蔵の FFmpeg や認識コンポーネントなどが、起動時にここへ展開されます
LOG_LEVEL log.level info コンソールログの量。info は起動時のアクセス先・停止・警告・エラーなど要点のみ。トラブル調査時は debug で詳細をすべて出力します。warn・error も指定できます

録画容量と削除のルールは録画と再生を参照してください。

ライブ映像(WebRTC)

環境変数 設定ファイル 既定値 説明
STREAM_STUN_SERVERS stream.stun_servers 空 STUN サーバー。内蔵の既定値はありません。クイック接続をオンにすると Rerinku Cloud から配布される TURN を使うようになり、この項目は効かなくなります
STREAM_ICE_LISTEN — 空 既定では、接続ごとにランダムな UDP ポートを 1 つ使います。:8189 のように設定すると、すべての接続がこの 1 つの UDP ポートを共用するので、ファイアウォールを設定しやすくなります
STREAM_ICE_CANDIDATES — 空 外部に通知する IP。クラウドサーバーや 1 対 1 NAT の環境向けです
STREAM_ICE_INTERFACES、STREAM_ICE_IPS — 空 これらのネットワークインターフェースや IP だけを使います。既定で docker、veth、tailscale などの仮想インターフェースは除外されています
STREAM_ICE_NETWORKS — udp4,tcp4 既定では IPv4 だけを使います

デバイス接続

Rerinku View SDK を使うデバイスと、スマートフォンアプリの Rerinku Cam は、HTTP で登録し、内蔵の MQTT サービスでコマンドを受け取ります。

環境変数 設定ファイル 既定値 説明
DEVICE_GATEWAY_ENABLED rerinku_device.enabled true オフにすると、接続できるのは ONVIF、RTSP、GB28181、USB カメラだけになります
DEVICE_BROKER_ADDR rerinku_device.broker_addr 0.0.0.0:1883(生成された設定ファイル) 内蔵 MQTT サービスの待ち受けアドレス。デバイスはログインにデバイストークンが必要で、自分のトピックしか使えません
DEVICE_PUBLIC_URL rerinku_device.public_url HTTP_ADDR から導出 デバイスに配布する Rerinku View のアドレス。デバイスからアクセスできる LAN の IP かドメイン名である必要があります
DEVICE_MQTT_BROKER rerinku_device.public_mqtt_broker tcp://<このマシンの IP>:<ポート> デバイスに配布する MQTT のアドレス
DEVICE_KEY rerinku_device.key 空(どのデバイスでも登録可能) 設定すると、デバイスは登録時に secret = base64(HMAC-SHA256(DEVICE_KEY, sn)) を付ける必要があります

自動で導出されるアドレスには、このマシンの送信元(アウトバウンド)IP が使われます。マシンに複数のネットワークインターフェースがある場合や、IP が変わった場合は、public_url と public_mqtt_broker を明示的に設定してください。

GB28181

環境変数 設定ファイル 既定値 説明
GB28181_ENABLED gb28181.enabled true(生成された設定ファイル) GB28181 の SIP サービスを有効にするかどうか。プログラム内蔵の既定値はオフです
GB28181_ADDR gb28181.addr :5060 SIP の待ち受けアドレス。UDP と TCP の両方で待ち受けます
GB28181_SERVER_ID gb28181.server_id 34020000002000000001 プラットフォームの SIP サーバー ID。デバイス側にはこれを入力します
GB28181_REALM gb28181.realm サーバー ID の先頭 10 桁 SIP ドメイン(レルム)
GB28181_PASSWORD gb28181.password change-me(生成された設定ファイル) デバイス登録のパスワード。空にすると認証しません
GB28181_MEDIA gb28181.media auto メディアの転送方式:auto、udp、tcp のいずれか

クイック接続と Rerinku Cloud

環境変数 設定ファイル 既定値 説明
CLOUD_API_URL cloud.api_url https://rerinku.com Rerinku Cloud のアドレス
CLOUD_REPORT cloud.report true 10 分ごとにインストール情報(インスタンス ID、バージョン、OS、ハードウェアの概要。デバイスと録画は含みません)を Rerinku Cloud に送信します。false でオフ

クイック接続の認証情報は、コンソールでオンにしたときに取得され、データベースに保存されます。リモートアクセスを参照してください。

ビデオデコードとデバッグ

環境変数 設定ファイル 既定値 説明
VIDEO_HW_DECODE video.hw_decode true false にすると、ソフトウェアデコードだけを使うように強制します。AI 認識を参照
APP_ENV app_env development development のときは、127.0.0.1:6060 でデバッグインターフェース(pprof)が有効になります。本番運用では production にすることをおすすめします
DEBUG_ADDR debug.addr 127.0.0.1:6060 デバッグインターフェースのアドレス。ローカルのループバックアドレスしか指定できません

ポート

ポート 用途 開放が必要か
8080/TCP コンソール、API、ライブ映像のシグナリング、再生、デバイスの登録とストリーム送信 必要
1883/TCP 内蔵 MQTT サービス(デバイス接続) Rerinku View SDK を使うデバイスや Rerinku Cam があるとき
5060/UDP、TCP GB28181 SIP GB28181 を使うとき
GB28181 メディア 1 ストリームごとにランダムなポートを 1 つ GB28181 を使うとき
WebRTC/UDP 既定ではシステムのランダムなポートを使用 STREAM_ICE_LISTEN=:8189 を設定し、この 1 つだけを開放することをおすすめします
127.0.0.1:6060 デバッグインターフェース。このマシンからのみ 不要

ONVIF の自動検出は LAN のマルチキャスト(3702 番ポート)を使います。ホストのファイアウォールが検出の応答パケットをブロックすることがあります。カメラの接続を参照してください。