インストール
Fenfaは2つのインストール方法をサポートしています:Docker(推奨)とソースからのビルド。
推奨
Dockerは最も早く始める方法です。ビルドツールを必要とせず、単一のコマンドで完全に動作するFenfaインスタンスを取得できます。
前提条件
| 要件 | 最低バージョン | 注意事項 |
|---|---|---|
| Docker | 20.10+ | またはPodman 3.0+ |
| Go(ソースビルドのみ) | 1.25+ | Dockerでは不要 |
| Node.js(ソースビルドのみ) | 20+ | フロントエンドのビルドに必要 |
| ディスクスペース | 100 MB | アップロードされたビルドのストレージは別途 |
方法1: Docker(推奨)
公式イメージをプルして実行します:
docker run -d \
--name fenfa \
-p 8000:8000 \
fenfa/fenfa:latesthttp://localhost:8000/adminにアクセスし、デフォルトトークンdev-admin-tokenでログインします。
セキュリティ
デフォルトトークンは開発用のみです。Fenfaをインターネットに公開する前に、安全なトークンを設定するためにプロダクションデプロイを参照してください。
永続ストレージを使用する場合
データベースとアップロードされたファイルのためにボリュームをマウントします:
docker run -d \
--name fenfa \
--restart=unless-stopped \
-p 8000:8000 \
-v ./data:/data \
-v ./uploads:/app/uploads \
fenfa/fenfa:latestカスタム設定を使用する場合
すべての設定を完全に制御するためにconfig.jsonファイルをマウントします:
docker run -d \
--name fenfa \
--restart=unless-stopped \
-p 8000:8000 \
-v ./data:/data \
-v ./uploads:/app/uploads \
-v ./config.json:/app/config.json:ro \
fenfa/fenfa:latest利用可能なすべてのオプションについては設定リファレンスを参照してください。
環境変数
設定ファイルなしで設定値を上書きします:
docker run -d \
--name fenfa \
-p 8000:8000 \
-e FENFA_ADMIN_TOKEN=your-secret-admin-token \
-e FENFA_UPLOAD_TOKEN=your-secret-upload-token \
-e FENFA_PRIMARY_DOMAIN=https://dist.example.com \
-v ./data:/data \
-v ./uploads:/app/uploads \
fenfa/fenfa:latest| 変数 | 説明 | デフォルト |
|---|---|---|
FENFA_PORT | HTTPポート | 8000 |
FENFA_DATA_DIR | データベースディレクトリ | data |
FENFA_PRIMARY_DOMAIN | 公開ドメインURL | http://localhost:8000 |
FENFA_ADMIN_TOKEN | 管理トークン | dev-admin-token |
FENFA_UPLOAD_TOKEN | アップロードトークン | dev-upload-token |
方法2: Docker Compose
docker-compose.ymlを作成します:
version: "3.8"
services:
fenfa:
image: fenfa/fenfa:latest
container_name: fenfa
restart: unless-stopped
ports:
- "8000:8000"
environment:
FENFA_ADMIN_TOKEN: your-secret-admin-token
FENFA_UPLOAD_TOKEN: your-secret-upload-token
FENFA_PRIMARY_DOMAIN: https://dist.example.com
volumes:
- ./data:/data
- ./uploads:/app/uploadsサービスを起動します:
docker compose up -d方法3: ソースからビルド
リポジトリをクローンします:
git clone https://github.com/openprx/fenfa.git
cd fenfaMakeを使用する場合
Makefileがフルビルドを自動化します:
make build # フロントエンド + バックエンドをビルド
make run # サーバーを起動手動ビルド
最初にフロントエンドアプリケーションをビルドし、次にGoバックエンドをビルドします:
# 公開ダウンロードページをビルド
cd web/front && npm ci && npm run build && cd ../..
# 管理パネルをビルド
cd web/admin && npm ci && npm run build && cd ../..
# Goバイナリをビルド
go build -o fenfa ./cmd/serverフロントエンドはinternal/web/dist/にコンパイルされ、go:embedでGoバイナリに組み込まれます。出来上がったfenfaバイナリは完全に自己完結しています。
バイナリを実行する
./fenfaFenfaはデフォルトでポート8000で起動します。SQLiteデータベースはdata/ディレクトリに自動的に作成されます。
インストールの確認
ブラウザでhttp://localhost:8000/adminを開き、管理トークンでログインします。管理ダッシュボードが表示されるはずです。
ヘルスエンドポイントを確認します:
curl http://localhost:8000/healthz期待されるレスポンス:
{"ok": true}次のステップ
- クイックスタート -- 5分で最初のビルドをアップロード
- 設定リファレンス -- すべての設定オプション
- Dockerデプロイ -- Docker Composeとマルチアーキテクチャビルド