Local Docker deploy daemon on NixOS

The Basics

  • Nextcloud Server version (e.g., 29.x.x): 30.0.4
  • Operating system and version (e.g., Ubuntu 24.04): Nixos 24.11
  • Web server and version (e.g, Apache 2.4.25): Nginx
  • PHP version (e.g, 8.3): 8.3
  • Is this the first time you’ve seen this error? (Yes / No): Yes
  • Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
    NixOS container
  • Are you using CloudfIare, mod_security, or similar? (Yes / No) No

Summary of the issue you are facing:

I cannot configure a local Docker deploy daemon running over a socket. If I run a deploy/connection test via the web, nothing works. To be very clear, I mean that literally. I see no errors except in my browser console, where I’m told the app failed to deploy and to check my logs. If I do, I see nothing until enabling full debug logging. This still doesn’t give anything very useful except for this occ command:

occ app_api:app:register test-deploy docker_local --info-xml https://raw.githubusercontent.com/cloud-py-api/test-deploy/main/appinfo/info.xml --test-deploy-mode --no-ansi

If I run this command manually, the app deploys and works. The challenges here are that NixOS doesn’t install occ as occ. It instead installs the command as nextcloud-occ which, when I change the command and run it, works just fine. It’s also not in the systemd path for this unit. So before I go too far down a NixOS-specific rabbit hole I wanted to check some things:

  1. Is the deploy test actually attempting to run occ from the command line vs. just calling it via PHP functions?
  2. If so, is there anything I can change in the Nextcloud config to indicate that the command should be nextcloud-occ instead? I can probably set up an alias/symlink somehow but I’d rather reconfigure Nextcloud if there’s an easy way to just change the executable name.

Thanks.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.