
Nextcloud
Self-hosted file sync, sharing, and collaboration
Overview
Nextcloud is an open source, self-hosted file sync and sharing platform that also supports calendars, contacts, and team collaboration. QuickBox deploys it as a web application under a fixed web path so it’s accessible through the browser.
It is not a CLI-only tool; access is provided through a web UI at /nextcloud behind the QuickBox nginx reverse proxy.
Key features
QuickBox provides a clean, reverse-proxied Nextcloud setup with predictable paths, a dedicated PHP-FPM pool, and database-backed installs.
Web access path
Served from /nextcloud over HTTPS via the QuickBox reverse proxy.
Standard install layout
Application files live in /srv/nextcloud with configuration in /srv/nextcloud/config/config.php.
Dedicated data directory
User data is stored under /home/username/.config/Nextcloud/data.
Isolated PHP 8.4 FPM pool
Nextcloud runs on a dedicated PHP 8.4-FPM pool at /run/php/php8.4-fpm-nextcloud.sock, isolated from other applications.
Security headers and HSTS
nginx enforces security headers including Strict-Transport-Security (HSTS) and blocks direct access to sensitive paths.
Install logging
Installer output is captured in /opt/quickbox/logs/nextcloud.log. Dashboard operations log to /opt/v4-dashboard/var/log/.
DAV and federation endpoints
Well-known routes redirect CalDAV, CardDAV, WebFinger, and NodeInfo to the correct Nextcloud paths.
Post-install optimization
QuickBox automatically runs database index, column, and primary key migrations plus a maintenance repair after install.
When to use it
Use Nextcloud when you want a self-hosted alternative to consumer cloud storage with syncing, sharing, and collaboration features.
Good fit if
- You want a self-hosted file sync and collaboration suite for your server.
- You need browser access under a fixed path like
/nextcloud. - You want CalDAV/CardDAV compatibility using
/nextcloud/remote.php/dav. - You want federation support with WebFinger and NodeInfo discovery.
What QuickBox sets up
- QuickBox installs Nextcloud into
/srv/nextcloudand configures nginx routes. - Your Nextcloud admin user is created from the QuickBox username you install with.
- Data storage is placed in
/home/username/.config/Nextcloud/data. - A dedicated PHP 8.4 FPM pool keeps Nextcloud isolated from other PHP applications.
Installation
Install from the Dashboard
Open App Dashboard → Package Management (/dashboard?mode=packages), find Nextcloud
in the catalog (browse the File Management category or search), and click Install. The
dashboard streams the install log live and Nextcloud appears as Installed when it
finishes. Nextcloud is a server-wide web app served at /nextcloud — there is nothing to
pick in the dialog. Reinstall, Update, and Remove are available from the same
panel.
Nextcloud is a system-wide package: admins manage it for the server. See App Management for the full flow.
The installer automatically optimizes the Nextcloud database by running missing index, column, and primary key migrations, followed by a full maintenance repair. It also sets the maintenance window to 01:00 UTC so background jobs run during low-traffic hours.
Install from the CLI (automation)
The CLI runs the same scripts as the Dashboard and is suited to automation and scripting:
qb install nextcloud -u username
qb reinstall nextcloud -u username
qb update nextcloud -u username
qb remove nextcloud -u usernameFull flag reference: CLI Reference.
Access and authentication
URL / route
Nextcloud is exposed from the QuickBox web root at:
https://host/nextcloudThe nginx config redirects several well-known endpoints for DAV and federation compatibility:
/.well-known/caldav → /nextcloud/remote.php/dav
/.well-known/carddav → /nextcloud/remote.php/dav
/.well-known/webfinger → /nextcloud/index.php/.well-known/webfinger
/.well-known/nodeinfo → /nextcloud/index.php/.well-known/nodeinfoLogin / credentials / tokens
During install, QuickBox creates the Nextcloud admin account using the QuickBox username you install with, and the admin password is set to the QuickBox user password.
Security notes
The Nextcloud nginx configuration blocks direct access to sensitive paths like /nextcloud/config, /nextcloud/data, and /nextcloud/lib. It enforces a suite of security headers including Strict-Transport-Security with max-age=15552000; includeSubDomains (HSTS), X-Content-Type-Options, X-Frame-Options, X-Robots-Tag, and X-XSS-Protection. The X-Powered-By header is removed from PHP responses.
Configuration and files
These are the primary locations used by the QuickBox Nextcloud install:
PHP-FPM pool
Nextcloud uses a dedicated PHP 8.4-FPM pool that is separate from the system PHP configuration. The pool config lives at /etc/php/8.4/fpm/pool.d/nextcloud.conf and communicates via the socket at /run/php/php8.4-fpm-nextcloud.sock. This isolation means Nextcloud PHP settings (memory limits, upload sizes, execution timeouts) do not affect other applications on the server.
Key pool settings:
- Upload limit: 512 MB
- Memory limit: 512 MB per process
- Max execution time: 3600 seconds
- Process manager: dynamic (up to 64 children)
Common tasks
Typical workflows:
- Open
/nextcloudin a browser to complete setup and start syncing. - Use the DAV endpoint at
/nextcloud/remote.php/davfor CalDAV/CardDAV clients. - Check
/opt/quickbox/logs/nextcloud.logfor v3 CLI install and upgrade output. - Check
/opt/v4-dashboard/var/log/username/for Dashboard operation logs. - Review
/srv/nextcloud/config/config.phpwhen adjusting trusted domains.
FAQ
/home/username/.config/Nextcloud/data as configured during installation./srv/nextcloud/config/config.php. QuickBox also adds your server web root as a trusted domain in this file./etc/php/8.4/fpm/pool.d/nextcloud.conf and the socket is /run/php/php8.4-fpm-nextcloud.sock./opt/v4-dashboard/var/log/username/package-install-{jobId}.log, package-remove-{jobId}.log, or package-update-{jobId}.log. CLI installs log to /opt/quickbox/logs/nextcloud.log.Best practices
Do
- Access Nextcloud through
/nextcloudand the nginx reverse proxy. - Review
/srv/nextcloud/config/config.phpbefore making changes to trusted domains. - Use the QuickBox CLI for updates to keep permissions and database optimizations consistent.
- Check both
/opt/quickbox/logs/nextcloud.log(CLI) and/opt/v4-dashboard/var/log/username/(Dashboard) when diagnosing issues.
Don't
- Do not expose sensitive paths like
/nextcloud/configor/nextcloud/datadirectly. - Do not skip the QuickBox install process—Nextcloud relies on QuickBox to create the admin account and data directory.
- Do not modify the PHP-FPM pool config at
/etc/php/8.4/fpm/pool.d/nextcloud.confunless you understand the impact on memory and process limits.
Troubleshooting
If /nextcloud loads but you see errors or a blank page, confirm that the nginx route exists at /etc/nginx/software/nextcloud.conf and that the app files are present in /srv/nextcloud.
If CalDAV/CardDAV clients fail to connect, verify they are using /nextcloud/remote.php/dav and that /.well-known/caldav and /.well-known/carddav resolve to the same host.
If installs or updates fail, review /opt/quickbox/logs/nextcloud.log for the CLI installer output and /opt/v4-dashboard/var/log/username/ for Dashboard operation logs.
Resources
Nextcloud resources
Join the Community
Media server operators sharing configs, getting support, and shaping the future of QuickBox Pro.