Linux Mint Xfce 22.3 を WebDAVサーバにする

音楽ファイルのストリーミングでWebDAVを利用していた。これまではNASで構築していたのだけれど、Linuxサーバ移行の流れで自分でサーバ組むことにした。

目次

環境

apache生で入れると融通きかなくなりそうなので、docker使うよ。

docker-compose.yml

services:
  webdav:
    image: bytemark/webdav
    container_name: webdav_server
    restart: always
    ports:
      - "${WEBDAV_PORT}:80"
    environment:
      - AUTH_USER=${WEBDAV_USER}
      - AUTH_PASSWORD=${WEBDAV_PASSWORD}
    volumes:
      - "${HOST_DATA_PATH}:/var/lib/dav/data"
    # 環境変数からユーザーIDを指定して権限問題を回避
    user: "${PUID}:${PGID}"

これの変更部分は .envで以下。

# WebDAV 認証情報
WEBDAV_USER=user1
WEBDAV_PASSWORD=your_secure_password

# 接続ポート
WEBDAV_PORT=8080

# ホスト側のデータ保存先 (外付けHDDのパスなど)
HOST_DATA_PATH=/mnt/external_hdd/webdav_data

動作確認

そしたらupで動作確認。

docker compose up

特にエラーが出なかったら、ファイラを起動する。パス部分をクリックして dav://localhost:ポートとしてやると、ユーザ名とパスワードが求められるので、入力した情報を記述。

ブラウザで開けたらOK。そしたらバックグラウンドで動かす。

docker compose up -d

(おまけ)証明書発行してCloudBeatsでストリーミング再生

CloudBeatsは音楽再生のAndroidアプリ。これでWebDAV選択してストリーミングできる。ただCloudBeatsはHTTPS必須。なのでなんらかの手段で証明書発行が必要。

多分一番楽なのは、Cloudflare Tunnelでつなぐ。常にインターネット接続になってしまうが、まぁ音楽ファイルの再生くらいならそんなに気にもならないのでは。

次に楽なのはTailscale。Tailscaleで発行されるドメイン*.ts.netを使ってアクセス。

普通の独自ドメインやインターネット接続前提を頑張るなら、Caddy(リバースプロキシ) + AdGuardHome(LAN内DNS)でスプリットDNS。Tailscaleネットワークでも独自ドメインでやりたいならこれ。この設定はけっこう頑張る。

メモ大事

Geminiの提案が意味不明かつ、bytemark/webdavのdocker-compose.ymlも完全に妄想を出してきて時間を無駄にした。というか、以前にブックマーク同期のfloccusで既にWebDAVサーバたててたの完全に忘れていた。最初から自分の書いた記事を参照すべきだった。

この記事をいいなと思っていただけた方、よければ高評価・チャンネル登録……はないので、コメント・SNSでシェア・ブックマーク、RSSフィード登録を、よろしくお願い致します。

コメント

コメントする

目次