Reverse Proxy & LibreTime-Celery missing

Hello,

I used LibreTime with Apache2 in Reverse Proxy, and I decided to relaunch a local radio thanks to your tool.

Today I switched from Apache2 to Nginx, but I’m not quite comfortable yet.

I started the installation from scratch, following this step-by-step guide: How to install LibreTime 3.0.2 on Debian 11 | LibreTime

An error occurs in the logs when I want to access the web interface :slight_smile:

Nginx logs :

Stack trace:
#0 /usr/share/libretime/legacy/application/configs/conf.php(416): Config::load()
#1 /usr/share/libretime/legacy/application/Bootstrap.php(5): Config::getConfig()
#2 /usr/share/libretime/legacy/vendor/zf1s/zend-application/library/Zend/Application.php(340): require_once('...')
#3 /usr/share/libretime/legacy/vendor/zf1s/zend-application/library/Zend/Application.php(202): Zend_Application->setBootstrap()
#4 /usr/share/libretime/legacy/vendor/zf1s/zend-application/library/Zend/Application.php(99): Zend_Application->setOptions()
#5 /usr/share/libretime/legacy/application/airtime-boot.php(59): Zend_Application->__construct()
#6 /usr/share/libretime/legacy/public/index.php(56): require_once('...')
#7 {main}
  thrown in /usr/share/libretime/legacy/application/configs/conf.php on line 227" while reading response header from upstream, client: 91.168.148.99, server: radio.oizos.net, request: "GET /front/service-worker.js HTTP/2.0", upstream: "fastcgi://unix:/run/libretime-legacy.sock:", host: "radio.oizos.net"
2023/05/08 21:15:28 [error] 3710504#3710504: *2732 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function yaml_parse_file() in /usr/share/libretime/legacy/application/configs/conf.php:227

And I have a 404 error on webpage.

The server runs on Debian 11, with Nginx and PHP-FPM 7.4 (is LibreTime compatible with PHP 8.2?) and a Let’s Encrypt certificate.

Here is my Nginx config:

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

  server_name radio.oizos.net;

  access_log /var/log/nginx/libretime.access.log;
  error_log /var/log/nginx/libretime.error.log;

  root /usr/share/libretime/legacy/public;

  index index.php index.html index.htm;

  client_max_body_size 512M;
  client_body_timeout 300s;

  location ~ \.php$ {
    fastcgi_buffers 64 4K;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;

    # try_files $uri =404;
    try_files $fastcgi_script_name =404;

    include fastcgi_params;

    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    set $path_info $fastcgi_path_info;
    fastcgi_param PATH_INFO $path_info;
    include fastcgi_params;

    fastcgi_index index.php;
    fastcgi_pass unix:/run/libretime-legacy.sock;
  }

  location / {
    try_files $uri $uri/ /index.php$is_args$args;
  }

  location ~ ^/api/(v2|browser) {
    include proxy_params;
    proxy_redirect off;
    proxy_pass http://unix:/run/libretime-api.sock;
  }
}

Everything goes well on installation, except libretime-celery which seems to be missing…

systemctl --all --plain | grep libretime
libretime-analyzer.service                                                               loaded    active   running   LibreTime Media Analyzer Service
libretime-api.service                                                                    loaded    active   running   LibreTime API Service
libretime-celery.service                                                                 not-found inactive dead      libretime-celery.service
libretime-liquidsoap.service                                                             loaded    active   running   LibreTime Liquidsoap Service
libretime-playout.service                                                                loaded    active   running   LibreTime Playout Service
libretime-worker.service                                                                 loaded    active   running   LibreTime Worker Service
libretime-api.socket                                                                     loaded    active   running   LibreTime API Socket
libretime.target                                                                         loaded    active   active    LibreTime Services

Did I miss something?
Thanks for your help !

The libretime-celery.service has been renamed to libretime-worker.service.

No LibreTime is only working with PHP 7.4.

Weird, seems like the php7.4-yaml extensions is missing. The installer should have installed it.

Make sure it is installed, and it is enabled.

Conflicting oerdnj/deb.sury.org repositories! I followed this guide to get rid of it: How to downgrade to stock packages · oerdnj/deb.sury.org Wiki · GitHub

Everything works now, thank you!