Dufsとは?
Dufsは、静的ファイル配信やアップロード、検索、アクセス制御、WebDAVサポートなど多機能なファイルサーバーソフトウェアです。
主な機能
- 静的ファイルの提供
- フォルダをZIP形式でダウンロード可能
- ファイルおよびフォルダのドラッグ&ドロップによるアップロード
- ファイルの作成/編集/検索
- 復旧可能なセグメントアップロードとダウンロード
- 認証およびアクセス制御
- HTTPS対応
- WebDAVサポート
- curlでの操作が容易
インストール方法
Dockerを使用してSynologyにインストールします。DufsはCLIベースのツールであるため、Docker CLIでの運用が推奨されます。
- Dockerレジストリで
dufsを検索し、sigoden/dufsを選択してください。 - タグは
latestを使用します(執筆時点ではv0.41.0に対応)。
1. ボリューム設定
Dockerディレクトリ内にdufsという新しいフォルダを作成し、その中にdataというサブフォルダを追加します。
| ホストパス | コンテナパス | 説明 |
|---|---|---|
/docker/dufs/data |
/data |
ファイル格納用 |
2. ポート設定
利用可能なポートを確認するために以下のコマンドを使用できます:
# 使用中のポートを確認
netstat -tunlp | grep <ポート番号>
以下のポートマッピングを設定します:
| ホストポート | コンテナポート |
|---|---|
5032 |
5000 |
デフォルトでは外部へのポート公開は無効なので、手動で+ボタンから追加してください。
3. 環境変数
環境変数は不要ですが、CLIコマンドで動作をカスタマイズできます。たとえば、/data -Aを使用すると、/dataディレクトリに対する全操作(アップロード、削除、検索など)が可能です。
詳細なCLIオプションは公式リポジトリを参照してください:Dufs CLI Documentation
コマンドラインでのセットアップ
以下はDocker CLIを使用したセットアップ例です。
# 必要なディレクトリを作成
mkdir -p /volume1/docker/dufs/data
# dufsディレクトリに移動
cd /volume1/docker/dufs
# コンテナを起動
docker run --rm -it \
--name dufs \
-p 5032:5000 \
-v $(pwd)/data:/data \
sigoden/dufs:latest \
/data -A
または、docker-compose.ymlを使用することもできます。
version: '3'
services:
dufs:
image: sigoden/dufs
container_name: dufs
ports:
- "5032:5000"
volumes:
- ./data:/data
command: /data -A
上記の内容をdocker-compose.ymlとして保存後、以下のコマンドで起動します。
# 必要なディレクトリを作成
mkdir -p /volume1/docker/dufs/data
# dufsディレクトリに移動
cd /volume1/docker/dufs
# docker-compose.ymlを配置
# コンテナをバックグラウンドで起動
docker-compose up -d
動作確認
ブラウザでhttp://<Synology_IP>:5032にアクセスすると、Dufsのメインインターフェースが表示されます。
ここではファイルのアップロード、ダウンロード、移動、削除、編集などが可能です。
認証の追加
ユーザー認証を有効化するには、以下のコマンドを使用します。
docker run --rm -it \
--name dufs \
-p 5032:5000 \
-v $(pwd)/data:/data \
sigoden/dufs:latest \
/data -a user:pass@/:rw
ブラウザでアクセスすると、ログイン画面が表示されます。正しいユーザー名とパスワードを入力することでアクセスできます。
WebDAVクライアントの接続
RaiDriveなどのWebDAVクライアントを使用して接続可能です。接続後、以前にアップロードしたファイルがリスト表示されます。