Ampache Music Streaming Server installeren op Fedora 33

Ampache is een open-source web-gebaseerde persoonlijke audio streaming toepassing geschreven in PHP. Je kunt er je digitale muziekcollectie mee hosten en beheren op je server en ze streamen naar je computer, smartphone, tablet, of smart TV. Je kunt verschillende Android en iOS toepassingen gebruiken om je muziek van je Ampache muziekserver naar je persoonlijke toestellen te streamen.

Deze handleiding behandelt hoe je de Ampache toepassing op een Fedora 33 gebaseerde server installeert en hoe je er muziek naar uploadt om te streamen.

Vereisten

  • Een server waarop Fedora 33 draait.

  • Een niet-root sudo gebruiker.

  • Zorg dat alles bijgewerkt is.

    $ sudo dnf upgrade
    
  • Weinig pakketten die je systeem nodig heeft.

    $ sudo dnf install wget curl nano zip -y
    
  • Schakel SELinux uit.

    $ sudo setenforce 0
    

Configureer Firewall

De eerste stap is het instellen van de firewall. Fedora server wordt geleverd met Firewalld voorgeïnstalleerd.

Controleer of de firewall draait.

$ sudo firewall-cmd --state

Je zou de volgende uitvoer moeten krijgen.

running

Stel de standaard zone van de firewall in op public.

$ sudo firewall-cmd --set-default-zone=public

Controleer de huidige toegestane services/ports.

$ sudo firewall-cmd --zone=public --permanent --list-services

Het zou de volgende uitvoer moeten geven.

dhcpv6-client mdns ssh

Sta HTTP en HTTPS poorten toe.

$ sudo firewall-cmd --zone=public --permanent --add-service=http
$ sudo firewall-cmd --zone=public --permanent --add-service=https

Controleer nogmaals de status van de firewall.

$ sudo firewall-cmd --zone=public --permanent --list-services

Je zou een gelijkaardige uitvoer moeten zien.

dhcpv6-client http https mdns ssh

Herlaad de firewall.

$ sudo systemctl reload firewalld

Git installeren

Voor we verder gaan, moeten we Git installeren.

$ sudo dnf install git

Configureer vervolgens Git met je persoonlijke gegevens.

$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"

Installeer MariaDB

MariaDB is een drop-in vervanger voor MySQL, wat betekent dat de commando's om MariaDB te draaien en te bedienen dezelfde zijn als die voor MySQL.

Fedora 33 wordt standaard geleverd met MariaDB 10.4, maar omdat MariaDB 10.5 de nieuwste stabiele versie is, zullen we daarvoor de officiële MariaDB repository gebruiken.

Maak het bestand /etc/yum.repos.d/MariaDB.repo en open het voor bewerking.

$ sudo nano /etc/yum.repos.d/MariaDB.repo

Plak er de volgende code in.

# MariaDB 10.5 Fedora repository list
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.5/fedora33-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Bewaar en sluit het bestand door op Ctrl + X te drukken en Y in te voeren als daarom gevraagd wordt.

Om MariaDB te installeren geef je het volgende commando.

$ sudo dnf install MariaDB-server -y

Let op dat je in het bovenstaande commando MariaDB-server typt en niet mariadb-server want het eerste installeert het uit de officiële repository terwijl het laatste commando de oudere versie uit Fedora's repository installeert.

Controleer of MariaDB correct geïnstalleerd is.

$ mysql --version

Je zou de volgende uitvoer moeten zien.

mysql  Ver 15.1 Distrib 10.5.9-MariaDB, for Linux (x86_64) using  EditLine wrapper

Schakel de MariaDB dienst in en start hem.

$ sudo systemctl enable mariadb
$ sudo systemctl start mariadb

Voer het volgende commando uit om standaard instellingen uit te voeren, zoals het geven van een root wachtwoord, het verwijderen van anonieme gebruikers, het op afstand verbieden van root login, en het laten vallen van testtabellen.

$ sudo mysql_secure_installation

Met MariaDB 10.4 wordt je nu gevraagd tussen het gebruik van het root wachtwoord of de unix_socket plugin. Met de plugin kun je op MariaDB inloggen met je Linux gebruikersgegevens. Het wordt als veiliger beschouwd hoewel je een traditionele gebruikersnaam/wachtwoord nodig hebt om programma's van derden zoals phpMyAdmin te gebruiken. We houden het bij het gebruik van de plugin voor deze zelfstudie. Je kunt phpMyAdmin nog steeds gebruiken via elke specifieke gebruiker die je voor je databanken aanmaakt.

Door op Enter te drukken kies je de standaard optie (die met een hoofdletter, Y in dit geval).

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): [PRESS ENTER]
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] [PRESS ENTER]
Enabled successfully!
Reloading privilege tables..
 ... Success!

You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] [ANSWER n]
... skipping.

By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] [PRESS ENTER]
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] [PRESS ENTER]
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] [PRESS ENTER]
 \- Dropping test database...
 ... Success!
 \- Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] [PRESS ENTER]
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Dat is het. De volgende keer dat je op MySQL wilt inloggen, gebruik je het volgende commando

$ sudo mysql

Voer je root wachtwoord in als daarom gevraagd wordt.

Configureer MariaDB voor Ampache

Nu moeten we een databank instellen om te gebruiken voor de Ampache toepassing. Om dat te doen log je in op de prompt van MySQL.

$ sudo mysql

Eenmaal op de prompt voer je de volgende commando's in die een databank met de naam ampache instellen en een databank gebruiker met de naam ampuser instellen en hem toegang tot de databank verlenen.

mysql> CREATE DATABASE ampache;
mysql> CREATE USER 'ampuser'@'localhost' IDENTIFIED BY 'yourpassword';
mysql> GRANT ALL PRIVILEGES ON ampache.* TO 'ampuser'@'localhost';
mysql> exit

Installeer PHP

Fedora 33 wordt standaard geleverd met PHP 7.4 maar om een bijgewerkte PHP repository te hebben, zullen we de REMI repository toevoegen.

Installeer de REMI repository die de officiële Fedora repository is voor het installeren van PHP pakketten.

$ sudo dnf -y install https://rpms.remirepo.net/fedora/remi-release-33.rpm

Installeer PHP 7.4 als module.

$ sudo dnf module install php:remi-7.4

Controleer of PHP correct werkt.

$ php --version

Je zou een soortgelijke uitvoer moeten zien.

PHP 7.4.16 (cli) (built: Mar  2 2021 10:35:17) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

Installeer PHP uitbreidingen

Ampache heeft enkele PHP uitbreidingen nodig. Gebruik het volgende commando om ze te installeren.

sudo dnf install php-curl php-gd php-intl php-mysql

Configureer PHP-FPM

Open het bestand /etc/php-fpm.d/www.conf.

$ sudo nano /etc/php-fpm.d/www.conf

We moeten de Unix gebruiker/groep van PHP processen instellen op nginx. Zoek de regels user=apache en group=apache in het bestand en verander ze in nginx.

...
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
...

Sla het bestand op door op Ctrl + X te drukken en Y in te voeren als daarom gevraagd wordt.

Vervolgens moeten we de bestandsgrootte voor het uploaden van muziek vergroten in het /etc/php.ini bestand. Open het bestand om het te bewerken.

$ sudo nano /etc/php.ini

Verander de volgende regels

. . .
post_max_size = 8M
. . .
upload_max_filesize = 2M

in

. . .
post_max_size = 110M
. . .
upload_max_filesize = 100M
. . .

Nu kun je bestanden tot 100MB groot uploaden. Je kunt de waarde veranderen in wat je maar wilt. Zorg er alleen voor dat de variabele post_max_size groter is dan de variabele upload_max_filesize.

Sla het bestand op door op Ctrl + X te drukken en Y in te voeren als daarom gevraagd wordt.

Herstart het PHP-fpm proces.

$ sudo systemctl restart php-fpm

Installeer Nginx

Fedora 33 wordt standaard geleverd met de nieuwste Stable versie van Nginx. (1.18.0).

Installeer Nginx.

$ sudo dnf install nginx -y

Controleer of het correct werkt.

$ nginx -v

Je zou de volgende uitvoer moeten zien, afhankelijk van de versie van Nginx die je koos om te installeren.

nginx version: nginx/1.18.0

Start Nginx en schakel het in.

$ sudo systemctl start nginx
$ sudo systemctl enable nginx

Open het IP adres van je server in een browser om de volgende pagina te zien. Dit betekent dat Nginx goed werkt.

Fedora Nginx Thuis

Configureer Nginx

Richt mappen in waar de serverblokken komen te staan.

$ sudo mkdir /etc/nginx/sites-available
$ sudo mkdir /etc/nginx/sites-enabled

Open het /etc/nginx/nginx.conf bestand om te bewerken.

$ sudo nano /etc/nginx/nginx.conf	

Plak de volgende regels na de regel include /etc/nginx/conf.d/*.conf

include /etc/nginx/sites-enabled/*.conf;
server_names_hash_bucket_size 64;

Druk op Ctrl + X om de editor te sluiten en druk op Y als gevraagd wordt om het bestand op te slaan.

Voer het volgende commando uit om een configuratiebestand voor Ampache toe te voegen.

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

Plak de volgende code in de editor.

server {

    # listen to
    listen  [::]:80;
    listen       80;

    server_name ampache.example.com;
    charset utf-8;

    # Logging, error_log mode [notice] is necessary for rewrite_log on,
    # (very usefull if rewrite rules do not work as expected)

    error_log       /var/log/nginx/ampache.error.log; # notice;
    access_log      /var/log/nginx/ampache.access.log;
    # rewrite_log     on;

    # Use secure headers to avoid XSS and many other things
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Robots-Tag none;
    add_header X-Download-Options noopen;
    add_header X-Permitted-Cross-Domain-Policies none;
    add_header X-Frame-Options "SAMEORIGIN" always;
    add_header Referrer-Policy "no-referrer";
    add_header Content-Security-Policy "script-src 'self' 'unsafe-inline' 'unsafe-eval'; frame-src 'self'; object-src 'self'";

    # Avoid information leak
    server_tokens off;
    fastcgi_hide_header X-Powered-By;

    root /var/www/html/ampache;
    index index.php;
    client_max_body_size 100m;

    # Somebody said this helps, in my setup it doesn't prevent temporary saving in files
    proxy_max_temp_file_size 0;

    # 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;
    }

    # 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;

    # the following line was needed for me to get downloads of single songs to work
    rewrite ^/play/ssid/(.*)/type/(.*)/oid/([0-9]+)/uid/([0-9]+)/action/(.*)/name/(.*)$ /play/index.php?ssid=$1&type=$2&oid=$3&uid=$4action=$5&name=$6 last;
    location /play {
        if (!-e $request_filename) {
			rewrite ^/play/art/([^/]+)/([^/]+)/([0-9]+)/thumb([0-9]*)\.([a-z]+)$ /image.php?object_type=$2&object_id=$3&auth=$1 last;
        }

		rewrite ^/([^/]+)/([^/]+)(/.*)?$ /play/$3?$1=$2;
		rewrite ^/(/[^/]+|[^/]+/|/?)$ /play/index.php last;
		break;
    }

   location /rest {
      limit_except GET POST {
         deny all;
      }
   }

   location ^~ /bin/ {
      deny all;
      return 403;
   }

   location ^~ /config/ {
      deny all;
      return 403;
   }

   location / {
      limit_except GET POST HEAD{
         deny all;
      }
   }

   location ~ ^/.*.php {
        fastcgi_index index.php;

        # sets the timeout for requests in [s] , 60s are normally enough
        fastcgi_read_timeout 600s;

        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

        # Mitigate HTTPOXY https://httpoxy.org/
        fastcgi_param HTTP_PROXY "";

        # has to be set to on if encryption (https) is used:
        fastcgi_param HTTPS on;

        fastcgi_split_path_info ^(.+?\.php)(/.*)$;

        # chose as your php-fpm is configured to listen on
        fastcgi_pass unix:/run/php-fpm/www.sock;
   }

   # Rewrite rule for WebSocket
   location /ws {
        rewrite ^/ws/(.*) /$1 break;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_pass http://127.0.0.1:8100/;
   }
}

Dit bestand gaat ervan uit dat we Ampache installeren op het domein ampache.example.com en in de directory /var/www/html/ampache. Druk op Ctrl + X om de editor te sluiten en druk op Y als gevraagd wordt om het bestand op te slaan.

Activeer dit configuratiebestand door het te linken naar de sites-enabled directory.

$ sudo ln -s /etc/nginx/sites-available/ampache.conf /etc/nginx/sites-enabled/

Test de Nginx configuratie.

$ sudo nginx -t

Je zou de volgende uitvoer moeten zien die aangeeft dat je configuratie juist is.

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Herlaad de Nginx dienst.

$ sudo systemctl reload nginx

HTTPS instellen met Let's Encrypt

Om Let's encrypt te gebruiken, moeten we het Certbot pakket installeren.

Installeer Certbot.

$ sudo dnf install certbot certbot-nginx -y

Installeer het certificaat.

$ sudo certbot --nginx -d ampache.example.com

Als dit de eerste keer is dat je het gereedschap op deze server gebruikt, moet je akkoord gaan met de voorwaarden en je email adres invoeren. Zeg nee als je gevraagd wordt of je je e-mail met de EFF stichting wilt delen.

Als dat gelukt is, vraagt certbot hoe je je HTTPS instellingen wilt configureren.

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
-------------------------------------------------------------------------------
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

Kies 2 en druk dan op ENTER. Je certificaat is nu geïnstalleerd en geactiveerd.

Voer het volgende commando uit om automatische vernieuwing in te stellen.

$ echo "0 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew" | sudo tee -a /etc/crontab > /dev/null

Installeer Ampache

Maak een lege document root map voor Ampache.

$ sudo mkdir -p /var/www/html/ampache

Het -p argument zorgt ervoor dat de bovenliggende mappen var en www automatisch worden aangemaakt als ze nog niet bestaan.

Download vervolgens het ZIP archief van de nieuwste versie van Ampache. Je vindt de link naar de nieuwste release op zijn Github releases pagina. Op het moment van schrijven van deze handleiding is 4.4.1 de nieuwste versie, dus we zullen die downloaden.

$ wget https://github.com/ampache/ampache/releases/download/4.4.1/ampache-4.4.1_all.zip

Pak vervolgens het ZIP bestand uit in de map die we eerder maakten.

$ sudo unzip ampache-4.4.1_all.zip -d /var/www/html/ampache/

Stel vervolgens de permissies in op de /var/www/html/ampache directory voor de Nginx webserver.

$ sudo chown --recursive  nginx:nginx /var/www/html/ampache/

Maak een andere directory om je muziek in op te slaan. We hebben hier geen sudo nodig omdat we in onze eigen gebruikersdirectory aanmaken.

$ sudo mkdir -p /data/Music

Verander het eigendom van de /home/user/music in nginx zodat de server kan schrijven en lezen van de directory waar je muziek zult opslaan.

$ sudo chown -R nginx:nginx /data/Music

Om het instellen van Ampache af te ronden installeer je FFmpeg, een programma om audio en video bestanden van het ene formaat naar het andere om te zetten. Ampache gebruikt FFmpeg om audio bestanden on the fly om te zetten van het formaat waarnaar ze geüpload werden naar een formaat dat het luisterapparaat kan spelen.

Fedora wordt niet standaard met FFmpeg geleverd, dus moeten we eerst de RPMFusion repository toevoegen.

$ sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Installeer vervolgens FFmpeg.

$ sudo dnf install ffmpeg

Ampache Installer gebruiken

Je Ampache site is klaar voor gebruik en kan benaderd worden via https://example.com in je browser. De eerste keer dat je die opent, word je begroet door de web installer van Ampache.

Ampache Installateur Home

Kies je taal en ga verder naar de volgende pagina waar je te zien krijgt of je server voldoet aan de eisen voor Ampache.

Ampache Installer Vereisten

Als je de handleiding goed gevolgd hebt, dan zou je naar de volgende pagina moeten kunnen gaan waar je gevraagd wordt de Database gegevens in te vullen. Omdat we de database al gemaakt hebben, kunnen we het vinkje ervoor uit laten. Hetzelfde geldt voor de databank gebruiker. Vul de databasenaam, gebruiker en wachtwoord in die we gemaakt hebben en ga verder naar de volgende pagina.

Ampache Database Setup

Vervolgens krijg je de configuratie-opties voor Ampache te zien. De meeste informatie is vooringevuld en hoeft niet veranderd te worden.

Ampache Installer Configuratie

Om een of andere reden detecteert het Ampache web installatieprogramma niet de geïnstalleerde FFmpeg binary op Fedora. We zullen dat later inschakelen door het configuratiebestand handmatig te bewerken.

Vul nu de gegevens in voor de Administrator account voor Ampache.

Ampache Admin Account Instelling

Je wordt nu doorverwezen naar de login pagina voor Ampache.

Ampache Inloggen

Vul je gebruikersgegevens in en je kunt nu de Ampache speler benaderen.

Ampache Home

Voor je hem kunt gaan gebruiken moeten we FFmpeg inschakelen voor transcoding doeleinden. Om dat in te schakelen moet je het /var/www/html/ampache/config/ampache.cfg.php bestand openen om het te bewerken.

$ sudo nano /var/www/html/ampache/config/ampache.cfg.php

Vervang de volgende regel

;transcode_cmd = "ffmpeg"

door de volgende regel door het ampersand teken ervoor te verwijderen.

transcode_cmd = "ffmpeg"

Druk op Ctrl + X om de editor te sluiten en druk op Y als daarom gevraagd wordt om het bestand op te slaan. Je kunt via dit bestand nog veel meer veranderingen aanbrengen die je wilt. Je Ampache installatie is klaar, maar om hem te laten werken moeten we er eerst wat muziek aan toevoegen.

Muziek toevoegen

Om muziek aan Ampache toe te voegen moeten we een catalogus in de speler maken en dan de bestanden uploaden vanuit de webinterface.

Gebruik eerst de optie catalogus toevoegen op de startpagina.

Ampache Catalogus Toevoegen

Kies local als het type catalogus en vul het pad /home/user/music in. Als je afspeellijsten wilt importeren, kies je de optie Build Playlists from Playlist Files. Geef je catalogus een naam en klik dan op Add Catalog om verder te gaan.

Nu onze catalogus gemaakt is, moeten we de optie inschakelen om muziekbestanden te kunnen uploaden. Klik daarvoor op de vierde navigatieknop op de werkbalk linksboven om Admin instellingen te openen.

Ampache Admin Knop

Scroll naar beneden naar de sectie Server Config en klik op System.

Ampache Server Config Sectie

Zoek de regel Allow user uploads en kies On uit het dropdown menu. Je kunt ook het type gebruiker kiezen dat de bestanden mag toevoegen. In ons geval is dat de Catalogusbeheerder die toevallig ook de Beheerder is.

Je moet ook de bestemming instellen voor de door de gebruiker geüploade bestanden. Je kunt dit instellen met de regel Bestemmingscatalogus. Kies de catalogus die we zojuist gemaakt hebben uit het dropdown menu.

Ampache Upload Instellingen

Klik op Update Preferences als je klaar bent. Je kunt nu muziek toevoegen aan je Ampache installatie. Klik daarvoor op het koptelefoon-icoon in het navigatiemenu linksboven.

Ampache werkbalk

Klik dan op de Upload link in de sectie Muziek.

Ampache Muziek Sectie

Op de Upload pagina, blader en selecteer je muziekbestanden van je lokale PC en upload ze. Als je de velden Artist en Album leeg laat, zal Ampache automatisch proberen ze te identificeren met behulp van de ID3 tags van de bestanden zelf.

Ampache Upload Pagina

Als je klaar bent, kun je je bestanden nu vinden op elk van de secties uit het linker deelvenster en je kunt nu je muziek streamen.

Conclusie

Dit is het einde van onze handleiding over het installeren en gebruiken van de Ampache Music streaming server powered by Fedora 33. Als je vragen of feedback hebt, plaats die dan in de commentaar hieronder.