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

プロジェクトについて

installs and configures Navidrome music server and streamer see more info at https://www.navidrome.org/about/

インストール
ansible-galaxy install zfuller.navidrome
ライセンス
gpl-3.0
ダウンロード
233
所有者
DevOps Engineer