High Performance Backend cannot be installed

Hi, I want to test the new HPB in my NC21 installation. So I followed the following howtos:

Unfortunately I get the following error message when running
sudo -u www-data php occ notify_push:setup

  • redis is not configured

But redis is configured and up and running. I use Debian 10 and php7.4. Does anyone else have the same problem?

Hi @wagnbeu0

How did you check redis was working?

In the nextcloudsettings I get no warning that redis is not configured.

Then I use this command and get an OK as output:

redis-cli -s /var/run/redis/redis-server.sock MONITOR

My nectcloud config.php looks like:

‘memcache.local’ => ‘\OC\Memcache\APCu’,
‘filelocking.enabled’ => ‘true’,
‘memcache.locking’ => ‘\OC\Memcache\Redis’,
‘redis’ =>
array (
‘host’ => ‘/var/run/redis/redis-server.sock’,
‘port’ => 0,
‘timeout’ => 0.0,
),

Regards
Ben

Problem solved, i need to install php7.4-redis,

apt-get install php7.4-redis

now the message is gone

Strange: Now I get:

sudo -u www-data php /var/www/nextcloud/occ notify_push:setup
This setup wizard is intended for use on single server instances
where the nextcloud server, web server/reverse proxy and push daemon all run on the same machine.
If your setup is more complex or involves any kind of load balancing
you should follow the manual setup instruction on the README instead
GitHub - nextcloud/notify_push: Update notifications for nextcloud clients
Press enter to continue or ESC to cancel…

Push binary seems to be running already
🗴 failed to run self-test.
test output: ✓ redis is configured
🗴 using unencrypted https for push server is strongly discouraged
🗴 push server url is set to localhost, the push server will not be reachable from other machines
✓ push server is receiving redis messages
✓ push server can load mount info from database
🗴 push server can’t connect to the Nextcloud server
Response from nextcloud is not a number: invalid digit found in string

See the steps in the README for manual setup instructions: GitHub - nextcloud/notify_push: Update notifications for nextcloud clients

I use Debian 10, and apache as webserver.
this is my forward proxy config:

ProxyPass /nextcloud/push/ws ws://127.0.0.1:7867/ws
ProxyPass /nextcloud/push/ http://127.0.0.1:7867/
ProxyPassReverse /nextcloud/push/ http://127.0.0.1:7867/

I also tried this but with no luck:

ProxyPass /push/ws ws://127.0.0.1:7867/ws
ProxyPass /push/ http://127.0.0.1:7867/
ProxyPassReverse /push/ http://127.0.0.1:7867/

OK, also fixed it.
Within the file /etc/systemd/system/notify_push.service I need to modify the webserver URL from:
Environment=NEXTCLOUD_URL=https://servername/nextcloud
to
Environment=NEXTCLOUD_URL=https://servername/nextcloud/

Now it works.

1 Like

Hi @wagnbeu0

Got the same issue but I’m newbie and I don’t find the file you mentioned

/etc/systemd/system/notify_push.service

When I do command :

`sudo -u www-data php /var/www/nextcloud/occ notify_push:setup`

out…

Allowing self-signed certificates in the push config.
🗴 failed to run self-test with auto-generated config.
test output: [2021-08-04 20:56:35.087697 +02:00] INFO [notify_push] src/main.rs:49: Running with certificate validation disabled
             [2021-08-04 20:56:35.231326 +02:00] WARN [notify_push] src/lib.rs:264: Error while trying to get cookie from Nextcloud 404 Not Found
             [2021-08-04 20:56:35.232169 +02:00] INFO [notify_push] src/main.rs:84: shutdown signal received, shutting down
             ✓ redis is configured
             🗴 using unencrypted https for push server is strongly discouraged
             🗴 push server url is set to localhost, the push server will not be reachable from other machines
             ✓ push server is receiving redis messages
             ✓ push server can load mount info from database
             **🗴 push server can't connect to the Nextcloud server**
               404 Not Found

systemctl restart notify_push
systemctl restart notify_push
Failed to restart notify_push.service: Unit notify_push.service has a bad unit file setting.
See system logs and 'systemctl status notify_push.service' for details.
root@collab:/lib/systemd/system# journalctl -u notify_push -f
-- Logs begin at Sun 2021-08-01 23:15:29 CEST. --
Aug 04 22:10:47 collab.opaz-ateliers.com systemd[1]: /etc/systemd/system/notify_push.service:1: Assignment outside of section. Ignoring.
Aug 04 22:10:47 collab.opaz-ateliers.com systemd[1]: notify_push.service: Service has no ExecStart=, ExecStop=, or SuccessAction=. Refusing.

Thanks 4 your help.

you have to create the systemd file by yourself:
Just create a file /etc/systemd/system/notify_push.service with this content:

[Unit]
Description = Push daemon for Nextcloud clients

[Service]
Environment=PORT=7867
Environment=NEXTCLOUD_URL=https://<your-servername>/nextcloud/
Environment=ALLOW_SELF_SIGNED=true
ExecStart=/var/www/html/nextcloud/apps/notify_push/bin/x86_64/notify_push /var/www/html/nextcloud/config/config.php
User=www-data

[Install]
WantedBy = multi-user.target

Once the systemd service file is set up with the correct configuration you can start it using

sudo systemctl start notify_push

and enable it to automatically start on boot using

sudo systemctl enable notify_push

Every time this app receives an update you should restart the systemd service using

sudo systemctl restart notify_push

Please see also: