Cómo instalar Ampache en Ubuntu con Nginx • Sitio web para estudiantes

Tutoriales abril 29, 2021

En este post veremos cómo instalar Ampache en Ubuntu 20.04 | 18.04 con servidor web Nginx.

Ampache es una aplicación de streaming de audio / video basada en web de código abierto y gratuita. Funciona como un administrador de archivos y permite que cualquiera pueda transmitir y acceder a su música y videos desde cualquier lugar del mundo con acceso a Internet.

Con Ampache puede navegar y administrar su colección de música, escuchar su música y ver sus videos desde cualquier dispositivo desde una sencilla interfaz web.

Ya sea que sea un pequeño DJ unipersonal o una empresa de streaming de música independiente, el software Ampache tiene características que pueden ayudarlo a transmitir su música a sus fans directamente desde Internet de forma gratuita.

Para comenzar a instalar Ampache en Ubuntu, sigue los pasos a continuación:

Paso 1: instala Nginx

El servidor HTTP Nginx es probablemente el segundo servidor web más popular en uso en la actualidad. Vaya e instale Nginx ya que Ampache lo necesitará para transmitir contenido a través de Internet.

Para instalar Nginx HTTP en el servidor Ubuntu, ejecute los siguientes comandos.

sudo apt update
sudo apt install nginx

Después de instalar Nginx, los siguientes comandos se pueden usar para detener, iniciar y habilitar el servicio Nginx para que siempre se inicie con el servidor arranca.

sudo systemctl stop nginx.service
sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Para probar la configuración de Nginx, abra su navegador y busque el nombre de host del servidor o la dirección IP y debería ver la página de prueba predeterminada de Nginx como se muestra a continuación.

http://localhost
prueba de la página de inicio predeterminada de nginx

Paso 2: Instale MariaDB

El servidor de base de datos MariaDB es un gran lugar para comenzar cuando busca servidores de base de datos de código abierto para usar con Ampache. Ampache utiliza una base de datos para almacenar su contenido de audio / video.

Para instalar MariaDB, ejecute los siguientes comandos.

sudo apt install mariadb-server mariadb-client

Después de instalar MariaDB, los siguientes comandos se pueden usar para detener, iniciar y habilitar el servicio MariaDB para que se inicie siempre cuando se inicie el servidor.

sudo systemctl stop mariadb.service
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Después de eso, ejecute los siguientes comandos para asegurar el servidor MariaDB creando una contraseña de root y no permitiendo el acceso remoto de root.

sudo mysql_secure_installation

Cuando se le solicite, responda las siguientes preguntas siguiendo la guía.

  • Ingrese la contraseña actual para root (ingrese para ninguna): simplemente presione Enter
  • ¿Establecer contraseña de root? [Y/n]: Y
  • Nueva contraseña: ingrese la contraseña
  • Vuelva a ingresar la nueva contraseña: Repita la contraseña
  • ¿Eliminar usuarios anónimos? [Y/n]: Y
  • ¿Deshabilitar el inicio de sesión de root de forma remota? [Y/n]: Y
  • ¿Eliminar la base de datos de prueba y acceder a ella? [Y/n]: Y
  • ¿Recargar tablas de privilegios ahora? [Y/n]: Y

Para probar si MariaDB está instalado, escriba los siguientes comandos para iniciar sesión en el servidor MariaDB

sudo mysql -u root -p

Luego escriba la contraseña que creó anteriormente para iniciar sesión … si tiene éxito, debería ver el mensaje de bienvenida de MariaDB

mariadb bienvenido

Paso 3: Instale PHP 7.4-FPM

Es posible que PHP 7.4-FPM no esté disponible en los repositorios predeterminados de Ubuntu. Para instalarlo, deberá obtenerlo de repositorios de terceros.

Ejecute los siguientes comandos para agregar el siguiente repositorio de terceros para actualizar a PHP 7.4-FPM

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php

Luego actualice y actualice a PHP 7.4-FPM

sudo apt update

A continuación, ejecute los siguientes comandos para instalar PHP 7.2-FPM y los módulos relacionados.

sudo apt install php7.4-fpm php7.4-common php7.4-curl php7.4-mbstring php7.4-xmlrpc php7.4-mysql php7.4-gd php7.4-xml php7.4-cli php7.4-zip

Después de instalar PHP 7.4-FPM, ejecute los siguientes comandos para abrir el archivo de configuración predeterminado de PHP para Nginx.

sudo nano /etc/php/7.4/fpm/php.ini

Luego, realice los cambios en las siguientes líneas a continuación en el archivo y guárdelo. Los valores a continuación son excelentes configuraciones para aplicar en sus entornos.

file_uploads = On
allow_url_fopen = On
short_open_tag = On
memory_limit = 256M
cgi.fix_pathinfo = 0
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = America/Chicago

Paso 4: crear una base de datos de Ampache

Ahora que ha instalado todos los paquetes necesarios para que Ampache funcione, continúe a continuación para comenzar a configurar los servidores. Primero ejecute los siguientes comandos para crear una base de datos de Ampache en blanco.

Para iniciar sesión en el servidor de la base de datos MariaDB, ejecute los siguientes comandos.

sudo mysql -u root -p

Luego crea una base de datos llamada ampache

CREATE DATABASE ampache;

Crea un usuario de base de datos llamado ampacheuser con nueva contraseña

CREATE USER 'ampacheuser'@'localhost' IDENTIFIED BY 'new_password_here';

Luego, conceda al usuario acceso completo a la base de datos.

GRANT ALL ON ampache.* TO 'ampacheuser'@'localhost' WITH GRANT OPTION;

Finalmente, guarde sus cambios y salga.

FLUSH PRIVILEGES;
EXIT;

Paso 5: Descargue e instale Ampache

Descargue el paquete Ampache desde su página de descarga. Simplemente puede ejecutar los siguientes comandos para crear un directorio de Ampache, extraer el contenido en el directorio de su directorio de inicio.

cd /tmp
wget https://github.com/ampache/ampache/releases/download/4.1.1/ampache-4.1.1_all.zip
sudo unzip ampache-4.1.1_all.zip -d /var/www/ampache

A continuación, ejecute los siguientes comandos para cambiar los permisos de la carpeta raíz.

sudo chown -R www-data:www-data /var/www/ampache/
sudo chmod -R 755 /var/www/ampache/

Paso 6: configurar el sitio de Ampache

A continuación, configure el host virtual Nginx para el sitio de Ampache. Este archivo controlará cómo los usuarios acceden al contenido de Ampache. Ejecute los siguientes comandos para crear un nuevo archivo de configuración llamado ampache.conf

sudo nano /etc/nginx/sites-available/ampache.conf

Luego copie y pegue el contenido a continuación en el archivo y guárdelo. Reemplace la línea resaltada con su propio nombre de dominio y la ubicación raíz del directorio.

server {
    listen 80;
    listen [::]:80;

    server_name  example.com www.example.com;
    root   /var/www/ampache;
    index  index.php;
    
    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    client_max_body_size 100M;
  
    autoindex off;

#Rewrite rule for Subsonic backend
if ( !-d $request_filename ) {
    rewrite ^/rest/(.*).view$ /rest/index.php?action=$1 last;     
    rewrite ^/rest/fake/(.+)$ /play/$1 last;
     } 

# Rewrite rule for Channels 
    if (!-d $request_filename){
    rewrite ^/channel/([0-9]+)/(.*)$ /channel/index.php?channel=$1&target=$2 last; 
    }

#Rewrite rule for Channels
 if (!-d $request_filename){
   rewrite ^/channel/([0-9]+)/(.*)$ /channel/index.php?channel=$1&target=$2 last;
    }

# Beautiful URL Rewriting
rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/name/(.*)$ /play/index.php ssid=$1&type=$2&oid=$3&uid=$4&name=$5 last;
rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&name=$6 last;
rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/player/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&player=$6&name=$7 last;
rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/bitrate/([0-9]+)/player/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&bitrate=$6player=$7&name=$8 last;
rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/transcode_to/(w+)/bitrate/([0-9]+)/player/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&transcode_to=$6&bitrate=$7&player=$8&name=$9 last;         rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/noscrobble/([0-1])/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&noscrobble=$6&name=$7 last;
rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/noscrobble/([0-1])/player/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&noscrobble=$6&player=$7&name=$8 last;
rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/noscrobble/([0-1])/bitrate/([0-9]+)/player/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&noscrobble=$6&bitrate=$7player=$8&name=$9 last;         rewrite ^/play/ssid/(w+)/type/(w+)/oid/([0-9]+)/uid/([0-9]+)/client/(.*)/noscrobble/([0-1])/transcode_to/(w+)/bitrate/([0-9]+)/player/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4&client=$5&noscrobble=$6&transcode_to=$7&bitrate=$8&player=$9&name=$10 last;

    location ~ .php$ {
         include snippets/fastcgi-php.conf;
         fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
         include fastcgi_params;
    }
}

Guarda el archivo y cierra.

Después de configurar el VirtualHost anterior, habilítelo ejecutando los comandos a continuación y reinicie Nginx.

sudo ln -s /etc/nginx/sites-available/ampache.conf /etc/nginx/sites-enabled/
sudo systemctl restart nginx.service

Finalmente, abra su navegador y vaya a la URL.

http://example.com

Debería ver el asistente de configuración de Ampache. Elija el idioma de instalación e inicie la configuración.

A continuación, asegúrese de que se cumplan todos los requisitos de PHP y continúe.

Después de escribir el nombre de la base de datos, el nombre de usuario y la contraseña de la base de datos. Luego continúe con el asistente.

A continuación, elija el backend subsónico para Ampache y continúe.

Después de eso, cree una cuenta de administrador inicial y continúe.

Eso debería completar la configuración.

Cuando termine la configuración, inicie sesión con la cuenta de administrador que creó anteriormente.

Inicie sesión y comience a configurar su entorno.

¡Deberias hacer eso!

Conclusión:

En este tutorial hemos visto cómo instalar Ampache en Ubuntu con el servidor web Nginx. Si encuentra algún error arriba, utilice el formulario de comentarios a continuación para informar.

También te puede gustar la publicación a continuación: