miércoles, 18 de junio de 2025

Subsonic instalado en una LXC de Proxmox

Hace ya un tiempo que tengo un Home Server y estoy usando Proxmox para virtualizar servidores de diferentes tipo/aplicaciones, como DNS, VPN, File Server, LDAP, Torrent, etc., etc., por eso uno de los servicios que no podía faltar es el streaming de audio con toda mi galería musical y lo que quería era usar Subsonic que para mí es la mejor app a usar... ok, si a alguien le ayuda dejo el procedimiento paso a paso:

  1. Lo primero será crear el LXC en Proxmox, esta parte es muy sencilla porque se puede usar la web de Helper Scripts para crear el contenedor y convertirlo en media server; hay que conectarse al nodo acceder a la terminal (recuerda crear el LXC con privilegios y acceso ssh para hacer mas facil las tareas de mantenimiento futuros), ejecuta el comando:
    bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/debian.sh)"

  2. Finalizada la instalación, tienes 2 opciones acceder iniciando sesión sobre el LXC o desde el nodo loguearte directamente usando el comando:
    lxc-attach --name 100
    también puedes usar el comando:
    pct enter 100
    Cambia el número 100 por el número del Container ID que se haya asignado.

  3. ya te logueaste, hay que habilitar el repositorio con java8:
    wget http://www.mirbsd.org/~tg/Debs/sources.txt/wtf-bookworm.sources
    sudo mkdir -p /etc/apt/sources.list.d
    sudo mv wtf-bookworm.sources /etc/apt/sources.list.d/
    sudo apt update

  4. Completada esta parte ya tendremos disponible lo que requerimos, ahora instalamos el jdk
    sudo apt install openjdk-8-jdk

  5. Bien procedemos a descargar e instalar Subsonic 
    wget https://s3-eu-west-1.amazonaws.com/subsonic-public/download/subsonic-6.1.3.deb
    sudo dpkg -i subsonic-6.1.3.deb

  6. Por seguridad hay que crear otro usuario para evitar que subsonic tenga acceso a root
    sudo useradd --system subsonic
    sudo gpasswd --add subsonic audio

  7. Ahora hay que editar el archivo "/etc/default/subsonic" para cambiar la cantidad de memoria máxima a usar y agregar el usuario con permisos a la aplicación, este usuario no tendrá más permisos en el computador para evitar riesgos de seguridad, el archivo se modificará así:
    # Type "subsonic --help" on the command line to read an
    # explanation of the different options.
    #
    # For example, to specify that Subsonic should use port 80 (for http)
    # and 443 (for https), and use a Java memory heap size of 200 MB, use
    # the following:
    #
    # SUBSONIC_ARGS="--port=80 --https-port=443 --max-memory=200"

    SUBSONIC_ARGS="--max-memory=150"

    SUBSONIC_USER=subsonic

  8. Por defecto Subsonic busca los archivos multimedia en la dirección: "/var/music", si deseas usar este directorio deberás crearlo y asignarle permisos al usuario subsonic, con el comando:
    sudo mkdir /var/music
    sudo chown subsonic:subsonic /var/music

  9. Reiniciar Subsonic antes de usarlo:
    sudo systemctl restart subsonic

  10. Listo ya puedes iniciar sesión abriendo el navegador e ingresando la URL de tu LXC http://IP:4040, recuerda que la primera vez que ingreses el user/pass=admin, cambialo y generate una cuenta con privilegios para administrar tus librerias. Que te diviertas!

No hay comentarios:

Publicar un comentario