AppApi HaRP connects but Test-Deploy container cannot be loaded

The Basics

  • Nextcloud Server version (e.g., 29.x.x):
    • 32.0.12
  • Operating system and version (e.g., Ubuntu 24.04):
    • Debian 13
  • Web server and version (e.g, Apache 2.4.25):
    • Apache 2.4.67
  • Reverse proxy and version _(e.g. nginx 1.27.2)
    • Apache
  • PHP version (e.g, 8.3):
    • inside nextcloud docker container
  • Is this the first time you’ve seen this error? (Yes / No):
    • Yes
  • When did this problem seem to first start?
    • this week
  • Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
    • Docker (nextcloud:stable, nextcloud/aio-talk, nextcloud-appappi-harp)
  • Are you using CloudfIare, mod_security, or similar? (Yes / No)
    • No
  • Summary of the issue you are facing:

I followed the docs to install appapi-harp docker container, configured the reverse proxy, can do a “ping” to port 8780 and I get a “Connection successful” when registering the daemon on the AppAPI settings page. But when I click on “Bereitstellung testen” (Sorry, I don’t know the official english translation, probl. test configuration) it doesn’t work and the debug log of the docker container shows me: (full log below)
Error creating container ‘nc_app_test-deploy’ with Docker API (status 404): {“message”:"No such image: Package test-deploy · GitHub "}

Steps to replicate it

  1. NC docker container installed (running great for years)

  2. docker run -d --privileged --platform linux/amd64 -e HP_LOG_LEVEL=“debug” -e HP_SHARED_KEY=“blablubb” -e NC_INSTANCE_URL=" Domain im Kundenauftrag registriert " -e HP_EXAPPS_ADDRESS=“172.18.0.5:8780” -v /var/run/docker.sock:/var/run/docker.sock -v pwd/certs:/certs --name appapi-harp -h appapi-harp --restart unless-stopped --network=nextcloud --ip=172.18.0.5 -p 8780:8780 -p 8782:8782 -d Package nextcloud-appapi-harp · GitHub

  3. curl -fsS -H “harp-shared-key: blablubb” -H “docker-engine-port: 24000” http://172.18.0.5:8780/exapps/app_api/v1.44/_ping
    → OK

  4. Register Daemon in the ApiAPP settings

  5. Run “test config” → fails

Note about 2.: the privileged mode is necessary unfortunately because the Debian host system is still 32-bit. Could that be the cause of my problems?

Log entries

Nextcloud

Please provide the log entries from your Nextcloud log that are generated during the time of problem (via the Copy raw option from Administration settings->Logging screen or from your nextcloud.log located in your data directory). Feel free to use a pastebin/gist service if necessary.

{"reqId":"i58q33VbPhST5QVddOjk","level":3,"time":"2026-07-01T17:19:27+00:00","remoteAddr":"","user":"--","app":"app_api","method":"","url":"/nextcloud/console.php","scriptName":"/nextcloud/console.php","message":"GuzzleException during HaRP /docker/exapp/create for test-deploy: Server error: `POST http://appapi-harp:8780/exapps/app_api/docker/exapp/create` resulted in a `503 Service Unavailable` response:\nError creating container 'nc_app_test-deploy': Status 404\n","userAgent":"--","version":"32.0.8.2","occ_command":["console.php","app_api:app:register"],"exception":{"Exception":"GuzzleHttp\\Exception\\ServerException","Message":"Server error: `POST http://appapi-harp:8780/exapps/app_api/docker/exapp/create` resulted in a `503 Service Unavailable` response:\nError creating container 'nc_app_test-deploy': Status 404\n","Code":503,"Trace":[{"file":"/var/www/html/3rdparty/guzzlehttp/guzzle/src/Middleware.php","line":72,"function":"create","class":"GuzzleHttp\\Exception\\RequestException","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php","line":209,"function":"GuzzleHttp\\{closure}","class":"GuzzleHttp\\Middleware","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php","line":158,"function":"callHandler","class":"GuzzleHttp\\Promise\\Promise","type":"::","args":[1,"*** sensitive parameters replaced ***","*** sensitive parameters replaced ***"]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/TaskQueue.php","line":52,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\Promise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php","line":251,"function":"run","class":"GuzzleHttp\\Promise\\TaskQueue","type":"->","args":[true]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php","line":227,"function":"invokeWaitFn","class":"GuzzleHttp\\Promise\\Promise","type":"->","args":[]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php","line":272,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->","args":[]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php","line":229,"function":"invokeWaitList","class":"GuzzleHttp\\Promise\\Promise","type":"->","args":[]},{"file":"/var/www/html/3rdparty/guzzlehttp/promises/src/Promise.php","line":69,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->","args":[]},{"file":"/var/www/html/3rdparty/guzzlehttp/guzzle/src/Client.php","line":189,"function":"wait","class":"GuzzleHttp\\Promise\\Promise","type":"->","args":[]},{"file":"/var/www/html/3rdparty/guzzlehttp/guzzle/src/ClientTrait.php","line":95,"function":"request","class":"GuzzleHttp\\Client","type":"->","args":["POST","http://appapi-harp:8780/exapps/app_api/docker/exapp/create",{"json":{"0":"And 4 more entries, set log level to debug to see all entries","name":"test-deploy","instance_id":"","image_id":"ghcr.io/nextcloud/test-deploy:release","network_mode":"nextcloud","environment_variables":["AA_VERSION=32.0.0","APP_SECRET=XXXXXXXXXXXXX","APP_ID=test-deploy","APP_DISPLAY_NAME=TestDeploy","APP_VERSION=1.2.2","And 8 more entries, set log level to debug to see all entries"]},"synchronous":true}]},{"file":"/var/www/html/apps/app_api/lib/DeployActions/DockerActions.php","line":168,"function":"post","class":"GuzzleHttp\\Client","type":"->","args":["http://appapi-harp:8780/exapps/app_api/docker/exapp/create",{"json":{"0":"And 4 more entries, set log level to debug to see all entries","name":"test-deploy","instance_id":"","image_id":"ghcr.io/nextcloud/test-deploy:release","network_mode":"nextcloud","environment_variables":["AA_VERSION=32.0.0","APP_SECRET=YYYYYYYYYYYYYY","APP_ID=test-deploy","APP_DISPLAY_NAME=TestDeploy","APP_VERSION=1.2.2","And 8 more entries, set log level to debug to see all entries"]}}]},{"file":"/var/www/html/apps/app_api/lib/Command/ExApp/Register.php","line":172,"function":"deployExAppHarp","class":"OCA\\AppAPI\\DeployActions\\DockerActions","type":"->","args":[{"__class__":"OCA\\AppAPI\\Db\\ExApp","id":1},{"__class__":"OCA\\AppAPI\\Db\\DaemonConfig","id":1},{"image_params":{"image_src":"ghcr.io","image_name":"nextcloud/test-deploy","image_tag":"release"},"container_params":{"0":"And 4 more entries, set log level to debug to see all entries","name":"test-deploy","hostname":"test-deploy","port":23000,"net":"nextcloud","env":["AA_VERSION=32.0.0","APP_SECRET=ZZZZZZZZZZZZZZ","APP_ID=test-deploy","APP_DISPLAY_NAME=TestDeploy","APP_VERSION=1.2.2","And 8 more entries, set log level to debug to see all entries"]},"deploy_options":{"environment_variables":"*** sensitive parameters replaced ***","mounts":"*** sensitive parameters replaced ***"}}]},{"file":"/var/www/html/3rdparty/symfony/console/Command/Command.php","line":326,"function":"execute","class":"OCA\\AppAPI\\Command\\ExApp\\Register","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/html/3rdparty/symfony/console/Application.php","line":1083,"function":"run","class":"Symfony\\Component\\Console\\Command\\Command","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/html/3rdparty/symfony/console/Application.php","line":324,"function":"doRunCommand","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"OCA\\AppAPI\\Command\\ExApp\\Register"},{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/html/3rdparty/symfony/console/Application.php","line":175,"function":"doRun","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/html/lib/private/Console/Application.php","line":187,"function":"run","class":"Symfony\\Component\\Console\\Application","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"},{"__class__":"Symfony\\Component\\Console\\Output\\ConsoleOutput"}]},{"file":"/var/www/html/console.php","line":90,"function":"run","class":"OC\\Console\\Application","type":"->","args":[{"__class__":"Symfony\\Component\\Console\\Input\\ArgvInput"}]}],"File":"/var/www/html/3rdparty/guzzlehttp/guzzle/src/Exception/RequestException.php","Line":111,"message":"GuzzleException during HaRP /docker/exapp/create for test-deploy: Server error: `POST http://appapi-harp:8780/exapps/app_api/docker/exapp/create` resulted in a `503 Service Unavailable` response:\nError creating container 'nc_app_test-deploy': Status 404\n","exception":[],"CustomMessage":"GuzzleException during HaRP /docker/exapp/create for test-deploy: Server error: `POST http://appapi-harp:8780/exapps/app_api/docker/exapp/create` resulted in a `503 Service Unavailable` response:\nError creating container 'nc_app_test-deploy': Status 404\n"},"id":"6a455a6c12ef9"}

Debug log of docker container

The debug log of the appapi-harp container:

[2026-07-01T17:19:01+0000] [DEBUG] Request from AppAPI received: /v1.44/_ping
[2026-07-01T17:19:01+0000] [INFO] [03683505] Responding with combined payload of 112 bytes
<134>Jul  1 17:19:01 haproxy[85]: 172.18.0.2:51618 [01/Jul/2026:17:19:01.681] ex_apps docker_engine_backend/frp_server 1/0/0/1/2 200 295 - - ---- 1/1/0/0/0 0/0 "GET /exapps/app_api/v1.44/_ping HTTP/1.1"
[2026-07-01T17:19:01+0000] [DEBUG] [26b16d69] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:01+0000] [DEBUG] [26b16d69] Health check, immediately disconnecting
[2026-07-01T17:19:03+0000] [DEBUG] [0f197cca] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:03+0000] [DEBUG] [0f197cca] Health check, immediately disconnecting
[2026-07-01T17:19:05+0000] [DEBUG] [72c4e40f] Incomplete read, exiting
[2026-07-01T17:19:05+0000] [DEBUG] [2ae50a71] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:05+0000] [DEBUG] [2ae50a71] Health check, immediately disconnecting
[2026-07-01T17:19:07+0000] [DEBUG] [577d15c0] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:07+0000] [DEBUG] [577d15c0] Health check, immediately disconnecting
[2026-07-01T17:19:09+0000] [DEBUG] [7b42ce86] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:09+0000] [DEBUG] [7b42ce86] Health check, immediately disconnecting
[2026-07-01T17:19:11+0000] [DEBUG] [71cb7de9] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:11+0000] [DEBUG] [71cb7de9] Health check, immediately disconnecting
[2026-07-01T17:19:13+0000] [DEBUG] [6df1e596] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:13+0000] [DEBUG] [6df1e596] Health check, immediately disconnecting
[2026-07-01T17:19:15+0000] [DEBUG] [c2c18ada] Incomplete read, exiting
[2026-07-01T17:19:15+0000] [DEBUG] [be1f46d3] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:15+0000] [DEBUG] [be1f46d3] Health check, immediately disconnecting
[2026-07-01T17:19:17+0000] [DEBUG] [6515aca1] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:17+0000] [DEBUG] [6515aca1] Health check, immediately disconnecting
[2026-07-01T17:19:19+0000] [DEBUG] [c8f8d51b] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:19+0000] [DEBUG] [c8f8d51b] Health check, immediately disconnecting
[2026-07-01T17:19:21+0000] [DEBUG] [92e89aaa] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:21+0000] [DEBUG] [92e89aaa] Health check, immediately disconnecting
[2026-07-01T17:19:23+0000] [DEBUG] [5eae3308] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:23+0000] [DEBUG] [5eae3308] Health check, immediately disconnecting
[2026-07-01T17:19:25+0000] [DEBUG] [2a75fc36] Incomplete read, exiting
[2026-07-01T17:19:25+0000] [DEBUG] [9e96c56e] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:25+0000] [DEBUG] [9e96c56e] Health check, immediately disconnecting
[2026-07-01T17:19:26+0000] [DEBUG] [03683505] Incoming `notify` frame from HAProxy
[2026-07-01T17:19:26+0000] [INFO] [03683505] Received request on key 'exapps_msg'
[2026-07-01T17:19:26+0000] [INFO] [03683505] Found 1 matching handlers, awaiting response...
[2026-07-01T17:19:26+0000] [DEBUG] Incoming request to ExApp: path=/exapps/app_api/v1.44/images/create, headers=harp-shared-key: EkweJGHFizuFM3pTJiC7ur3bz
docker-engine-port: 24000
user-agent: GuzzleHttp/7
authorization: Basic YXBwX2FwaV9oYXByb3h5X3VzZXI6RWt3ZUpHSEZpenVGTTNwVEppQzd1cjNieg==
host: appapi-harp:8780
content-length: 0

, ip=172.18.0.2
[2026-07-01T17:19:26+0000] [DEBUG] Request from AppAPI received: /v1.44/images/create
[2026-07-01T17:19:26+0000] [INFO] [03683505] Responding with combined payload of 120 bytes
<134>Jul  1 17:19:27 haproxy[85]: 172.18.0.2:57112 [01/Jul/2026:17:19:26.668] ex_apps docker_engine_backend/frp_server 1/0/0/661/662 500 244 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/v1.44/images/create?fromImage=ghcr.io%2Fnextcloud%2Ftest-deploy%3Arelease-cpu HTTP/1.1"
[2026-07-01T17:19:27+0000] [DEBUG] [03683505] Incoming `notify` frame from HAProxy
[2026-07-01T17:19:27+0000] [INFO] [03683505] Received request on key 'exapps_msg'
[2026-07-01T17:19:27+0000] [INFO] [03683505] Found 1 matching handlers, awaiting response...
[2026-07-01T17:19:27+0000] [DEBUG] Incoming request to ExApp: path=/exapps/app_api/v1.44/images/create, headers=harp-shared-key: **********
docker-engine-port: 24000
user-agent: GuzzleHttp/7
authorization: Basic YXBwX2FwaV9oYXByb3h5X3VzZXI6RWt3ZUpHSEZpenVGTTNwVEppQzd1cjNieg==
host: appapi-harp:8780
content-length: 0

, ip=172.18.0.2
[2026-07-01T17:19:27+0000] [DEBUG] Request from AppAPI received: /v1.44/images/create
[2026-07-01T17:19:27+0000] [INFO] [03683505] Responding with combined payload of 120 bytes
[2026-07-01T17:19:27+0000] [DEBUG] [e0c77e51] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:27+0000] [DEBUG] [e0c77e51] Health check, immediately disconnecting
<134>Jul  1 17:19:27 haproxy[85]: 172.18.0.2:57126 [01/Jul/2026:17:19:27.335] ex_apps docker_engine_backend/frp_server 0/0/1/621/622 200 436 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/v1.44/images/create?fromImage=ghcr.io%2Fnextcloud%2Ftest-deploy%3Arelease HTTP/1.1"
[2026-07-01T17:19:27+0000] [DEBUG] [03683505] Incoming `notify` frame from HAProxy
[2026-07-01T17:19:27+0000] [INFO] [03683505] Received request on key 'exapps_msg'
[2026-07-01T17:19:27+0000] [INFO] [03683505] Found 1 matching handlers, awaiting response...
[2026-07-01T17:19:27+0000] [DEBUG] Incoming request to ExApp: path=/exapps/app_api/docker/exapp/exists, headers=host: appapi-harp:8780
harp-shared-key: EkweJGHFizuFM3pTJiC7ur3bz
docker-engine-port: 24000
user-agent: GuzzleHttp/7
content-type: application/json
authorization: Basic YXBwX2FwaV9oYXByb3h5X3VzZXI6RWt3ZUpHSEZpenVGTTNwVEppQzd1cjNieg==
content-length: 39

, ip=172.18.0.2
[2026-07-01T17:19:27+0000] [DEBUG] Request from AppAPI received: /docker/exapp/exists
[2026-07-01T17:19:27+0000] [INFO] [03683505] Responding with combined payload of 105 bytes
[2026-07-01T17:19:27+0000] [DEBUG] Checking for container 'nc_app_test-deploy' via Docker API at http://127.0.0.1:24000/containers/nc_app_test-deploy/json
[2026-07-01T17:19:27+0000] [INFO] Container 'nc_app_test-deploy' does not exist.
<134>Jul  1 17:19:27 haproxy[85]: 172.18.0.2:57130 [01/Jul/2026:17:19:27.960] ex_apps nextcloud_control_backend/nextcloud_control 0/0/0/5/5 200 175 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/docker/exapp/exists HTTP/1.1"
[2026-07-01T17:19:27+0000] [INFO] 127.0.0.1 [01/Jul/2026:17:19:27 +0000] "POST /docker/exapp/exists HTTP/1.1" 200 176 "-" "GuzzleHttp/7"
[2026-07-01T17:19:27+0000] [DEBUG] [03683505] Incoming `notify` frame from HAProxy
[2026-07-01T17:19:27+0000] [INFO] [03683505] Received request on key 'exapps_msg'
[2026-07-01T17:19:27+0000] [INFO] [03683505] Found 1 matching handlers, awaiting response...
[2026-07-01T17:19:27+0000] [DEBUG] Incoming request to ExApp: path=/exapps/app_api/docker/exapp/create, headers=host: appapi-harp:8780
harp-shared-key: EkweJGHFizuFM3pTJiC7ur3bz
docker-engine-port: 24000
user-agent: GuzzleHttp/7
content-type: application/json
authorization: Basic YXBwX2FwaV9oYXByb3h5X3VzZXI6RWt3ZUpHSEZpenVGTTNwVEppQzd1cjNieg==
content-length: 735

, ip=172.18.0.2
[2026-07-01T17:19:27+0000] [DEBUG] Request from AppAPI received: /docker/exapp/create
[2026-07-01T17:19:27+0000] [INFO] [03683505] Responding with combined payload of 105 bytes
[2026-07-01T17:19:27+0000] [DEBUG] Checking/Creating volume 'nc_app_test-deploy_data' via Docker API
[2026-07-01T17:19:27+0000] [INFO] Volume 'nc_app_test-deploy_data' not found, attempting to create.
[2026-07-01T17:19:27+0000] [INFO] Volume 'nc_app_test-deploy_data' created successfully.
[2026-07-01T17:19:27+0000] [DEBUG] Attempting to create container 'nc_app_test-deploy' with image 'ghcr.io/nextcloud/test-deploy:release' via Docker API at http://127.0.0.1:24000/containers/create?name=nc_app_test-deploy
[2026-07-01T17:19:27+0000] [ERROR] Error creating container 'nc_app_test-deploy' with Docker API (status 404): {"message":"No such image: ghcr.io/nextcloud/test-deploy:release"}

<134>Jul  1 17:19:27 haproxy[85]: 172.18.0.2:57130 [01/Jul/2026:17:19:27.967] ex_apps nextcloud_control_backend/nextcloud_control 1/0/0/4/5 503 226 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/docker/exapp/create HTTP/1.1"
[2026-07-01T17:19:27+0000] [INFO] 127.0.0.1 [01/Jul/2026:17:19:27 +0000] "POST /docker/exapp/create HTTP/1.1" 503 227 "-" "GuzzleHttp/7"
[2026-07-01T17:19:28+0000] [DEBUG] [03683505] Incoming `notify` frame from HAProxy
[2026-07-01T17:19:28+0000] [INFO] [03683505] Received request on key 'exapps_msg'
[2026-07-01T17:19:28+0000] [INFO] [03683505] Found 1 matching handlers, awaiting response...
[2026-07-01T17:19:28+0000] [DEBUG] Incoming request to ExApp: path=/exapps/app_api/docker/exapp/exists, headers=host: appapi-harp:8780
harp-shared-key: EkweJGHFizuFM3pTJiC7ur3bz
docker-engine-port: 24000
user-agent: GuzzleHttp/7
content-type: application/json
authorization: Basic YXBwX2FwaV9oYXByb3h5X3VzZXI6RWt3ZUpHSEZpenVGTTNwVEppQzd1cjNieg==
content-length: 39

, ip=172.18.0.2
[2026-07-01T17:19:28+0000] [DEBUG] Request from AppAPI received: /docker/exapp/exists
[2026-07-01T17:19:28+0000] [INFO] [03683505] Responding with combined payload of 105 bytes
[2026-07-01T17:19:28+0000] [DEBUG] Checking for container 'nc_app_test-deploy' via Docker API at http://127.0.0.1:24000/containers/nc_app_test-deploy/json
[2026-07-01T17:19:28+0000] [INFO] Container 'nc_app_test-deploy' does not exist.
<134>Jul  1 17:19:28 haproxy[85]: 172.18.0.2:57144 [01/Jul/2026:17:19:28.281] ex_apps nextcloud_control_backend/nextcloud_control 1/0/0/4/5 200 175 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/docker/exapp/exists HTTP/1.1"
[2026-07-01T17:19:28+0000] [INFO] 127.0.0.1 [01/Jul/2026:17:19:28 +0000] "POST /docker/exapp/exists HTTP/1.1" 200 176 "-" "GuzzleHttp/7"
[2026-07-01T17:19:29+0000] [DEBUG] [fb4604ca] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:29+0000] [DEBUG] [fb4604ca] Health check, immediately disconnecting
[2026-07-01T17:19:31+0000] [DEBUG] [be49bf08] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:31+0000] [DEBUG] [be49bf08] Health check, immediately disconnecting
[2026-07-01T17:19:33+0000] [DEBUG] [13063250] Received `hello handshake`, responding with agent capabilities of: ''
[2026-07-01T17:19:33+0000] [DEBUG] [13063250] Health check, immediately disconnecting

Configuration

Nextcloud

The output of occ config:list system or similar is best, but, if not possible, the contents of your config.php file from /path/to/nextcloud is fine (make sure to remove any identifiable information!):

docker exec -it --user www-data nextcloud /var/www/html/occ config:list system
{
    "system": {
        "htaccess.RewriteBase": "\/",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379
        },
        "apps_paths": [
            {
                "path": "\/var\/www\/html\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/var\/www\/html\/custom_apps",
                "url": "\/custom_apps",
                "writable": true
            }
        ],
        "overwriteprotocol": "https",
        "overwritewebroot": "\/nextcloud",
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "proxy": "firewall.mydomain.de:3128",
        "default_language": "de",
        "default_locale": "de_DE",
        "default_phone_region": "DE",
        "mail_smtpmode": "smtp",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "25",
        "mail_smtpauthtype": "LOGIN",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_sendmailmode": "smtp",
        "mail_smtpstreamoptions": {
            "ssl": {
                "allow_self_signed": true,
                "verify_peer_name": false
            }
        },
        "upgrade.disable-web": true,
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "localhost",
            "www.mydomain.de"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "pgsql",
        "version": "32.0.8.2",
        "overwrite.cli.url": "https:\/\/www.mydomain.de\/nextcloud",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "maintenance_window_start": 1,
        "maintenance": false,
        "defaultapp": "",
        "skeletondirectory": "",
        "loglevel": 2,
        "app_install_overwrite": [
            "maps",
            "integration_openproject"
        ],
        "mail_smtpsecure": "",
        "mail_smtpauth": false,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "filelocking.enabled": true
    }
}

Apps

The output of occ app:list (if possible).

Enabled:
  - activity: 5.0.0
  - admin_audit: 1.22.0
  - analytics: 6.5.1
  - analytics_sourcepack: 0.0.5
  - announcementcenter: 7.4.1
  - app_api: 32.0.0
  - bruteforcesettings: 5.0.0
  - calendar: 6.5.0
  - circles: 32.0.0
  - cloud_federation_api: 1.16.0
  - collectives: 4.4.2
  - comments: 1.22.0
  - contacts: 8.3.14
  - contactsinteraction: 1.13.1
  - dashboard: 7.12.0
  - dav: 1.34.2
  - federatedfilesharing: 1.22.0
  - federation: 1.22.0
  - files: 2.4.0
  - files_downloadlimit: 5.0.0
  - files_pdfviewer: 5.0.0
  - files_reminders: 1.5.0
  - files_sharing: 1.24.1
  - files_trashbin: 1.22.0
  - files_versions: 1.25.0
  - fileslibreofficeedit: 2.0.1
  - firstrunwizard: 5.0.0
  - forms: 5.3.2
  - groupfolders: 20.1.15
  - integration_oidc: 0.1.10
  - integration_openproject: 2.11.3
  - logreader: 5.0.0
  - lookup_server_connector: 1.20.0
  - maps: 1.7.1
  - nextcloud_announcements: 4.0.0
  - notifications: 5.0.0
  - oauth2: 1.20.0
  - password_policy: 4.0.0
  - photos: 5.0.0
  - privacy: 4.0.0
  - profile: 1.1.0
  - provisioning_api: 1.22.0
  - recommendations: 5.0.0
  - related_resources: 3.0.0
  - serverinfo: 4.0.0
  - settings: 1.15.1
  - sharebymail: 1.22.0
  - spreed: 22.0.13
  - support: 4.0.0
  - survey_client: 4.0.0
  - systemtags: 1.22.0
  - text: 6.0.1
  - theming: 2.7.0
  - twofactor_backupcodes: 1.21.0
  - updatenotification: 1.22.0
  - user_status: 1.12.0
  - viewer: 5.0.0
  - weather_status: 1.12.0
  - webhook_listeners: 1.3.0
  - workflowengine: 2.14.0
Disabled:
  - encryption: 2.20.0
  - files_external: 1.24.1
  - suspicious_login: 10.0.0
  - twofactor_nextcloud_notification: 6.0.0
  - twofactor_totp: 14.0.0
  - user_ldap: 1.23.0

Screenshot of the ApiAPP settings:

Hi, try setting the following:

Harp Host: interne-ip:8780

Nextcloud URL:: https://dein.server/nextcloud/index.php

FRP Serveradresse: localhost:8782

Docker Netzwerk: host

Unless you are sure that your Docker network is actually named nextcloud.

Thanks for the quick reply!

Yes, my Docker network is actually named nextcloud.
I followed your advice but unfortunately still get the error:
<134>Jul 2 11:21:43 haproxy[95]: 172.18.0.2:41572 [02/Jul/2026:11:21:42.815] ex_apps docker_engine_backend/frp_server 1/0/0/596/597 500 244 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/v1.44/images/create?``fromImage=ghcr.io``%2Fnextcloud%2Ftest-deploy%3Arelease-cpu HTTP/1.1"
<134>Jul 2 11:21:44 haproxy[95]: 172.18.0.2:41584 [02/Jul/2026:11:21:43.417] ex_apps docker_engine_backend/frp_server 0/0/0/645/646 200 436 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/v1.44/images/create?``fromImage=ghcr.io``%2Fnextcloud%2Ftest-deploy%3Arelease HTTP/1.1"
[2026-07-02T11:21:44+0000] [INFO] Container 'nc_app_test-deploy' does not exist.
<134>Jul 2 11:21:44 haproxy[95]: 172.18.0.2:41588 [02/Jul/2026:11:21:44.065] ex_apps nextcloud_control_backend/nextcloud_control 0/0/0/3/3 200 175 - - ---- 1/1/0/0/0 0/0 "POST /exapps/app_api/docker/exapp/exists HTTP/1.1"
[2026-07-02T11:21:44+0000] [INFO] Volume 'nc_app_test-deploy_data' not found, attempting to create.
[2026-07-02T11:21:44+0000] [INFO] Volume 'nc_app_test-deploy_data' created successfully.
[2026-07-02T11:21:44+0000] [DEBUG] Attempting to create container 'nc_app_test-deploy' with image ' Package test-deploy · GitHub ' via Docker API at ``http://127.0.0.1:24000/containers/create?name=nc_app_test-deploy
[2026-07-02T11:21:44+0000] [ERROR] Error creating container 'nc_app_test-deploy' with Docker API (status 404): {"message":"No such image: ``ghcr.io/nextcloud/test-deploy:release``"}

I also tried “HaRP Proxy (Host)” with the same sad result.

Uhm, what else could be going wrong?

I have a proxy manager running, and I’ve also entered the following in it:

location /exapps/ {

    proxy_pass http://<interne IP>:8780; # interne IP-Adresse des Docker-Server

    proxy_set_header Host $host;

    proxy_set_header X-Real-IP $remote_addr;

    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_set_header X-Forwarded-Proto $scheme;

}

Maybe this will help you.

Mein Docker Run Befehl für HARP
docker run \
  -e HP_SHARED_KEY="PASSWORT" \
  -e NC_INSTANCE_URL="http://DOMAIN" \
  -e HP_EXAPPS_ADDRESS="INTERNE-IP:8780" \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v `pwd`/certs:/certs \
  --name appapi-harp -h appapi-harp \
  --restart unless-stopped \
  --network host \
  -d ghcr.io/nextcloud/nextcloud-appapi-harp:release

My apache config (for both Virtualhosts *:80 and *:443) contains this:
<Location /exapps/>
ProxyPreserveHost On
ProxyPass ``http://<internalIP>:8780/exapps/`` nocanon
ProxyPassReverse ``http://<internalIP>:8780/exapps/
RequestHeader set X-Real-IP %{REMOTE_ADDR}s
RequestHeader set X-Forwarded-For %{REMOTE_ADDR}s
RequestHeader set X-Forwarded-Proto expr=%{REQUEST_SCHEME}
</Location>

Does that look right? Should it be different for the SSL Virtualhost?

My docker run command is like yours but with this additionally:
--ip=172.18.0.5 -p 8780:8780 -p 8782:8782

Is there a specific reason why you assigned a fixed IP address when creating the container?

You’ll probably have to enter this IP-address:8782 as the FRP server address, rather than localhost as I suggested.

I can only say that I’ve set up several servers from scratch using my configuration, and there haven’t been any issues whatsoever.

Here’s my recommendation: delete your container, create it using my template, and then enter the values ​​exactly as I wrote them for you.

Besides, the question is: do you even need the Exapps? Currently, they offer no real added value and can safely be disabled.

Well, um, yes. How else would I know what to use as “internal IP”?
Which IP do you put there then?

Tried that, but same error. :frowning:

Tried it, but same problem.

I want to try the AI apps and they need this setup.

Hallo, ok, ich versuche mal mein Bestes.

auf Deutsch

Mein System läuft wie folgt:

Web-Adresse :soon_arrow: Nginx Proxy Manager :soon_arrow: Web-Server/lokaler Nextcloud-Server

web-adresse :soon_arrow: 192.168.177.2 :soon_arrow: 192.168.177.4

In meinem Proxy Manager sieht es wie folgt aus:

Die Apache Konfiguration sieht bei mir so aus:

# Apache web-Adresse:80

ServerAdmin email@web-adresse
DocumentRoot /var/www/nextcloud/
ServerName web-adresse

<Directory /var/www/nextcloud/>
    Options +FollowSymlinks
    AllowOverride All
    Require all granted
    <IfModule mod_dav.c>
        Dav off
    </IfModule>
    SetEnv HOME /var/www/nextcloud
    SetEnv HTTP_HOME /var/www/nextcloud
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

RewriteEngine on
RewriteCond %{SERVER_NAME} =web-adresse
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
# Apache web-adresse:443

ServerAdmin email@web-adresse
DocumentRoot /var/www/nextcloud/
ServerName web-adresse

<Directory /var/www/nextcloud/>
    Options +FollowSymlinks
    AllowOverride All
    Require all granted
    <IfModule mod_dav.c>
        Dav off
    </IfModule>
    SetEnv HOME /var/www/nextcloud
    SetEnv HTTP_HOME /var/www/nextcloud
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined


SSLCertificateFile /etc/letsencrypt/live/web-adresse/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/web-adresse/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf

Wie genau du die Proxy Einstellungen in Apache selbst vornimmst kann ich dir leider nicht beantworten, da ich immer mit einem Proxy Server vorweg arbeite, sprich, bei mir läuft der komplette Verkehr immer über den Nginx Proxy Manager, da ich mehrere Dienste auf jedem Server laufen habe.

Hi, okay, I’ll try my best.

auf Englisch

My system works as follows:

Web address :soon_arrow: Nginx Proxy Manager :soon_arrow: Web server/local Nextcloud server

web-adress :soon_arrow: 192.168.177.2 :soon_arrow: 192.168.177.4

Here’s what it looks like in my Proxy Manager

My Apache configuration looks like this:

# Apache web-Adresse:80

ServerAdmin email@web-adresse
DocumentRoot /var/www/nextcloud/
ServerName web-adresse

<Directory /var/www/nextcloud/>
    Options +FollowSymlinks
    AllowOverride All
    Require all granted
    <IfModule mod_dav.c>
        Dav off
    </IfModule>
    SetEnv HOME /var/www/nextcloud
    SetEnv HTTP_HOME /var/www/nextcloud
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

RewriteEngine on
RewriteCond %{SERVER_NAME} =web-adresse
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
# Apache web-adresse:443

ServerAdmin email@web-adresse
DocumentRoot /var/www/nextcloud/
ServerName web-adresse

<Directory /var/www/nextcloud/>
    Options +FollowSymlinks
    AllowOverride All
    Require all granted
    <IfModule mod_dav.c>
        Dav off
    </IfModule>
    SetEnv HOME /var/www/nextcloud
    SetEnv HTTP_HOME /var/www/nextcloud
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined


SSLCertificateFile /etc/letsencrypt/live/web-adresse/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/web-adresse/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf

Unfortunately, I can’t tell you exactly how to configure the proxy settings in Apache yourself, since I always use a proxy server first—that is, all my traffic always goes through the Nginx Proxy Manager, because I have multiple services running on each server.

Thanks a lot for your efforts. I now see that we are having pretty different setups. I tried on a different machine which is similar to your setup and it works as described.

However, in my case nextcloud itself is running in a docker container and - what might be the real problem - the docker host is a 32-bit Debian. I did patch the haproxy_agent.py and added “Privileged”: True, “Platform”: “linux/amd64” to the container_config variable.

But that still doesn’t solve the problem unfortunately. Still getting this error:
Error creating container 'nc_app_test-deploy' with Docker API (status 404): {"message":"No such image: ``ghcr.io/nextcloud/test-deploy:release``"}

But ghcr.io is DNS resolvable and reachable from within the container:

$ docker exec -it appapi-harp bash
appapi-harp:/var/lib/haproxy# ping -c1 ghcr.io
PING ghcr.io (140.82.121.33): 56 data bytes
64 bytes from 140.82.121.33: seq=0 ttl=56 time=7.599 ms

--- ghcr.io ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 7.599/7.599/7.599 ms

Any other ideas?

Oh, sorry, that was my mistake. I completely overlooked the fact that you’re using Docker—specifically AIO.

However, I don’t think that will work with a 32-bit system. Even if you configure it to make it think you have a 64-bit system, it won’t work. But I’m not knowledgeable enough about the technical details to say that with 100% certainty.

Have you tried this guide? It’s very detailed and provides templates for all the variations.

I set up a virtual server with Nextcloud AIO today. Everything worked immediately and out of the box.

I have to ask: are you using Nextcloud AIO? Or what exactly? Because on the installation interface, you can have HAProxy installed automatically, and everything gets fully configured.

I’m using the Docker containers: nextcloud:stable and nextcloud/aio-talk

I know nextcloud-aio would be easier but I have to work with what I got.

Okay, I need to test that out. I’ve never used Nextcloud that way before. I’ll give it a try; maybe I can help you further after that.

Hi, so I’ve spent a whole day trying to install Nextcloud and everything else manually on a server using Docker—I just can’t manage it; I’m too stupid for that. :person_facepalming::scream:

So, I’m afraid I can’t help you with that. Sorry.

Thanks a lot. I also tried other variants on different computers. Among them, a very similar setup on a 64-bit host. There, it’s “sort of” working. The test-deploy container is downloaded, started, tested and deleted - so far very good - but the status page of the “Bereitstellungstest” stays with errors instead of turning green.

Too bad nobody else except you is joining us here and commenting. :frowning:

When you get around to setting it up on a different system with a different configuration, it will most likely come down to your proxy settings. I also added Docker to a Nextcloud server today (though it was a LAMP stack/bare-metal version) and enabled exApps / AppApi-harp; I ran into a few struggles with that myself.

A mistake I made—and one I just noticed you making, too:

In your screenshot of the App API settings, you specified HARP Proxy (Docker) as the source. That is incorrect. It needs to be HARP Proxy (host). Try it again.

You also need the necessary settings in your Proxy Manager:

proxy_read_timeout 300;

proxy_pass_header X-Transmission-Session-Id;

proxy_set_header X-Forwarded-Host $host;

proxy_set_header X-Forwarded-Server $host;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_hide_header Upgrade;



location /exapps/ {

        proxy_pass http://YOUR-LAN-IP-DOCKER-SERVER:8780; # interne IP-Adresse des Docker-Server

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_set_header X-Forwarded-Proto $scheme;

}

Uhm, I doubt it. The communication from the outside seems to be working. But the HArP container cannot pull the test-deploy image from the inside. Am I overlooking something? How could the proxy settings screw this up?

I don’t understand the difference but I had tried both. See above:

Sorry, I missed the point about Docker and the host.

I can’t tell you exactly what the difference between the two versions is supposed to be; I just know that host always works when Docker is installed on the same server as Nextcloud.

So, I took another look at the logs you sent along with the first part.

The only point I find relevant is that you’re specifying the static IP of your Docker container. However, it’s not the IP of your Docker server, but rather that of a virtual Docker container. And that can’t really be right.

I’d recommend changing your DOCKER RUN command to the following and having the container recreated.

docker run \
-e HP_SHARED_KEY=“YOUR SECRET PASSWORD” \
-e NC_INSTANCE_URL="http://YOUR-DOMAIN/nextcloud" \
-e HP_EXAPPS_ADDRESS=“LOCAL-IP:8780” \
-v /var/run/docker.sock:/var/run/docker.sock \
-v `pwd`/certs:/certs \
--name appapi-harp -h appapi-harp \
--restart unless-stopped \
--network nextcloud \
-d ghcr.io/nextcloud/nextcloud-appapi-harp:release

Also, you had the following errors in your DOCKER RUN command (I just noticed them, so the binding might have been incorrect—it’s best to check in Portainer):

Yours (incorrect)

-v pwd/certs:/certs \
--network=nextcloud \

Correctly

-v `pwd`/certs:/certs \
--network nextcloud \

I think that because you specified network=nextcloud, it probably wasn’t even on the right network.

And please leave out the IP/port binding. I haven’t found anything anywhere that says you have to do that.

Good point. You’re right about that but it most likely doesn’t make a difference since the ports 8780 and 8782 are reachable both on the docker server and on the docker container. Nevertheless I changed the docker run command (the backticks around “pwd” were there - just got lost in posting somehow) and tested again. Unfortunately no change to the better. :frowning:

The logs show that the communication is working but it can’t find the test-deploy image. It must have to do with the 32-bit platform, I’m afraid.

So, I tried to run just the appapi-harp docker container on a different Debian server, 64-bit this time. And I configured the AppAPI like this:

(I tried network “nextcloud” and also network “host”)

Again, the communication is working, but the test-deploy container is loaded now (yeah!) and starts healthy:

$ docker container logs -f nc_app_test-deploy
...
HP_SHARED_KEY is set, creating /frpc.toml configuration file...
Directory /certs/frp not found. Creating configuration without TLS certificates.
Starting frpc in the background...
Starting application: python3 main.py
2026-07-10 16:49:19.763 [I] [sub/root.go:142] start frpc service for config file [/frpc.toml]
2026-07-10 16:49:19.763 [I] [client/service.go:295] try to connect to server...
2026-07-10 16:49:19.765 [W] [client/service.go:298] connect to server error: EOF
2026-07-10 16:49:21.809 [I] [client/service.go:295] try to connect to server...
2026-07-10 16:49:21.810 [W] [client/service.go:298] connect to server error: write tcp 172.22.129.179:56980->172.22.129.179:8782: write: connection reset by peer
2026-07-10 16:49:25.908 [I] [client/service.go:295] try to connect to server...
2026-07-10 16:49:25.909 [W] [client/service.go:298] connect to server error: EOF
Started
INFO:     Started server process [1]
INFO:     Waiting for application startup.
TRACE:    ASGI [1] Started scope={'type': 'lifespan', 'asgi': {'version': '3.0', 'spec_version': '2.0'}, 'state': {}}
TRACE:    ASGI [1] Receive {'type': 'lifespan.startup'}
TRACE:    ASGI [1] Send {'type': 'lifespan.startup.complete'}
INFO:     Application startup complete.
INFO:     Uvicorn running on unix socket /tmp/exapp.sock (Press CTRL+C to quit)
2026-07-10 16:49:34.403 [I] [client/service.go:295] try to connect to server...
2026-07-10 16:49:34.404 [W] [client/service.go:298] connect to server error: EOF
HP_SHARED_KEY is set, creating /frpc.toml configuration file...
Found /certs/frp directory. Creating configuration with TLS certificates.
Starting frpc in the background...
Starting application: python3 main.py
2026-07-10 16:49:35.450 [I] [sub/root.go:142] start frpc service for config file [/frpc.toml]
2026-07-10 16:49:35.450 [I] [client/service.go:295] try to connect to server...
2026-07-10 16:49:35.477 [I] [client/service.go:287] [dca2f958dd6b900a] login to server success, get run id [dca2f958dd6b900a]
2026-07-10 16:49:35.477 [I] [proxy/proxy_manager.go:173] [dca2f958dd6b900a] proxy added: [test-deploy]
2026-07-10 16:49:35.479 [I] [client/control.go:168] [dca2f958dd6b900a] [test-deploy] start proxy success
Started
INFO:     Started server process [1]
INFO:     Waiting for application startup.
TRACE:    ASGI [1] Started scope={'type': 'lifespan', 'asgi': {'version': '3.0', 'spec_version': '2.0'}, 'state': {}}
TRACE:    ASGI [1] Receive {'type': 'lifespan.startup'}
TRACE:    ASGI [1] Send {'type': 'lifespan.startup.complete'}
INFO:     Application startup complete.
INFO:     Uvicorn running on unix socket /tmp/exapp.sock (Press CTRL+C to quit)

But the Bereitstellungstest still fails :frowning:

The nextcloud.log shows this new error now:

{"reqId":"Y8oays1WsoJQKiqmaKJk","level":3,"time":"2026-07-10T16:50:25+00:00","remoteAddr":"<IP-of-my-NC-Server>","user":"--","app":"app_api","method":"GET","url":"/nextcloud/index.phpst-deploy/heartbeat","scriptName":"/nextcloud/index.php","message":"ExApp with appId test-deploy is disabled (/nextcloud/index.phpst-deploy/heartbeat)","userAgent":"Nextcloud Server Crawler","version":"32.0.8.2","data":{"app":"app_api"}}

Disabled? Very strange! and the “/nextcloud/index.phpst-deploy/heartbeat” is not a C&P error - why are characters missing?

Thanks for suffering with me, Thomas! :wink: