zfuller.navidrome
navidrome
このAnsibleロールは、Linuxサーバーにある自己ホスト型音楽サーバー「Navidrome」をインストールおよび設定します。このロールは、GitHubリポジトリからNavidromeの最新リリースをダウンロードし、navidrome_config
変数に設定されたnavidrome.toml
ファイルのカスタム設定を行います。また、systemdサービスも設定します。
インストールが完了すると、NavidromeサーバーはサーバーのIPアドレスまたはドメイン名を使用して、デフォルトポート4533でウェブブラウザーからアクセスできます。最初のインストールの際には、管理ユーザーをすぐに設定する必要があります。
追加のガイダンスについては、Navidromeウェブサイトの「Getting Started」ページをご覧ください。
なお、これは公式のNavidromeロールではなく、私自身の使用のために開発した個人的なプロジェクトであり、コミュニティと共有しています。
要件
Navidromeは単独でも、リバースプロキシを使用したウェブサーバーと一緒でも実行できます。
ロール変数
設定したい主な変数はMusicFolder
変数です。これは、音楽ライブラリの場所になります。それ以外の設定はデフォルトのままで問題ありません。
追加の変数についてもっと知りたい場合は、configuration-optionsを参照してください。
navidrome_user: www-data
navidrome_group: www-data
navidrome_release_url: https://github.com/navidrome/navidrome/releases
navidrome_temp_location: /tmp
navidrome_install_location: /opt
navidrome_config_dir: /var/lib/navidrome
navidrome_config_file: navidrome.toml
navidrome_pid_file: /var/run/navidrome.pid
navidrome_package_requirements:
- ffmpeg
# 以下は、Navidromeが受け入れる設定のほんの一部です。
# 必要に応じて辞書に追加の設定を加えることができます。
navidrome_config:
MusicFolder: # デフォルト: "{{ navidrome_config_dir }}/music"
DataFolder: # デフォルト: "{{ navidrome_config_dir }}/data"
LogLevel: # デフォルト: "info"
Address: # デフォルト: 0.0.0.0 と :: (すべてのIP)
BaseUrl: # デフォルト: (空)
Port: # デフォルト: 4533
AuthRequestLimit: # デフォルト: 5
AuthWindowLength: # デフォルト: "20s"
AutoImportPlaylists: # デフォルト: true
CoverArtPriority: # デフォルト: cover.*, folder.*, front.*, embedded, external
CoverJpegQuality: # デフォルト: 75
DefaultDownsamplingFormat: # デフォルト: opus
DefaultLanguage: # デフォルト: "en"
DefaultTheme: # デフォルト: Dark
...
UILoginBackgroundUrl: # デフォルト: Unsplash.com からのランダムな音楽画像
UIWelcomeMessage: # デフォルト: (空)
依存関係
該当なし
例示プレイブック
- name: setup navidrom
hosts: navidrome
gather_facts: yes
vars:
navidrome_config:
EnableGravatar: true
EnableDownloads: false
ImageCacheSize: "1GB"
MaxSidebarPlaylists: 5
CoverJpegQuality: 100
DefaultLanguage: "en"
MusicFolder: /home/music
SessionTimeout: "168h"
TranscodingCacheSize: "5GB"
AuthRequestLimit: 10
AuthWindowLength: "30m"
UIWelcomeMessage: "welcome"
roles:
- role: zfuller.navidrome_role
ライセンス
GPL-3.0-only
作者情報
zfuller