So far my experience with Nextcloud has been that it is a pain in the arse to install, and once it’s installed is slow as anything. Literally couldn’t run it on my pi 3b, now got it up and running pretty nicely on a NUC but it’s still not great. Have caching set up.
I have the notes app installed on my android phone and I can never used rich text editing because it gives timeout error.
This shouldn’t be this complicated. All I want is to de-Google my documents and notes, and self-host my kanban. I don’t really need the rest though it’s nice to have the options.
Do people use alternatives? Am I doing something completely wrong? I set it up using nginx which I know is not supported, but the alternative using Docker AIO didn’t allow me to use custom port easily.
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.
Rules:
Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.
No spam posting.
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.
Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
No trolling.
Resources:
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Synology is the answer.
cryptpad si quite good
I run Nextcloud, its responsive and has all my stuff in it. Notes, Calendar, Contacts, Kanboard, Photos, RSS reader, others. You do need look at the setup, how many PHP processes are you running, how much memory does MySQL use.
My current setup is a a PHP vm, 6 cores and 8GB of memory and a MySQL vm that is 2 cores and 8GB memory. But I work for a SaaS provider and thats now we carve up our systems, a vm/instance for 1 job.
Curious: where do I set this number?
The way I sorted it was to run nextcloud for a week, then run
ps aux
on the host and see what the memory use of a php process is. The 5th column is the memory use of a process, divide the number into the amount of memory you want PHP to use. The number fromps
is bytes, so you will need to use some maths to make it all fitin Debian running PHP-FPM in
/etc/php/{{ php_version }}/fpm/pool.d/www.conf
edit or add the below lines with the settings you needAlso MySQL has some options you can change to use more or less memory, this handy tool MySQLTuner is your best way to get the options
Wdym nginx is not supported? It very much is. Nextcloud is a pain to set up but after fiddling with settings for a day or two you can get it working smoothly. In my experience there are no good alternatives to it.
The documentation says it is not officially supported: https://docs.nextcloud.com/server/19/admin_manual/installation/nginx.html
My bad, thought you meant support as incompatibilities. Offical support doesn’t matter much to you since you are not using an enterprise license.
Nextcloud is not easy to setup, that´s right, but it is not this complicated. Use Postgres as database, it is faster than MySQL. Install Redis as Cache and configure PHP Cache too. This will speedup the most. I use nextcloud installed directly on the host, no docker. Another small guide is here for Postgres and Apache
Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:
7 acronyms in this thread; the most compressed thread commented on today has 6 acronyms.
[Thread #125 for this sub, first seen 10th Sep 2023, 09:45] [FAQ] [Full list] [Contact] [Source code]
Nginx is supported and a good choice. What database are you using? I’d recommend MariaDB.
Nginx alone will not speed up Nextcloud. Use Postgres instead of MySQL and configure Redis and PHP Cache. This will speed up most. And Nginx is not officially support, see here
The documentation says nginx is not officially supported: https://docs.nextcloud.com/server/19/admin_manual/installation/nginx.html
I am using mariadb
Ah right, sorry; the company doesn’t support it directly but the docs provide an example. To me as tinkerer that was solid enough 😂😅
Go for the AllinOne (AIO) Installation! Had huge performance issues first (Nextcloudpi Docker & normal Nextcloud Docker) and none with the current install.
You get a self servicing (updates/installation/etc.) docker install with backups and administration portal.
From the instructions it looked like anything other than the default ports is not supported in AIO. I want to host other sites on this server without much complication.
So use a reverse proxy like Nginx Proxy Manager
Yes, a reverse proxy can fix this issue.
I have nextcloud running on docker on a Raspberry Pi 4 and I’d say the performance is comparable to Onedrive web interface. If you’re getting timeouts then something must be wrong with the setup, not the machine it’s running on. Using Postgres instead of MySQL or using an SSD instead of HDD is not going to help your issue.
I guess you are doing something very wrong if you have such performance trouble all the time.
The Pi (up to 4) is known for bad disk I/O. Look into this area first.
I am running my nc on a weak old low power deskop CPU (and with real SATA harddisks) and only when I ask for long running jobs (like, create the previews and icons for 200 new photos) I can watch any slow responses at all.
I’m not using a Pi, I’m using a j4125 based mini computer, which has made a big difference but the performance just still is not good enough.
That is better than my NUC and I have no performance issues
For Kanban I use wekan, because it has more features. Nextcloud I host using snap, which I cannot 100% recommend because it sometimes has troubles upgrading to the latest version. Still, for me it causes less trouble than a manual install.
I am actually in a clinch with my nextcloud experience and found some different ways to handle this. My plans (tests looks good) is to simply use a small free nextcloud provider just to handle caldav/carddav/notes and stuff without all my data. Just enough to get everything synced.
For my data I plan to use ocis. It’s a long year rewrite of owncloud getting rid of PHP and hassle. It’s just a single binary. Docker support, too, but it needs some extra steps to initiate, unfortunately. But the experience is fast, modern, clean and simple. Without to much bloat.
Nextcloud is hard to install in manual way (even sometimes with Docker). As far I know, both Snap and Yunohost versions of Nextcloud are solid. I used Snap version on the cheapest Linode VPS, and it worked fine, especially when I doubled the SWAP to 1 GB. Now I use Yunohost version and I have only good time with it. It is super stable, fast and reliable. I used Nextcloud_ynh on HP 800 Mini G3 with i5-6500t and now on Asrock Mini PC with Ryzen 7 5700g. It is working just great.
If you don’t want to use Nextcloud, you ca install Vikunja for kanban and tasks. For notes Hedgedoc can be great.
+1 for Yunohost. I’ve never yet been able to figure out docker. Yunohost has kept me happy for years.
I seriously suggest you give Nextcloud another go, this time under Docker. Very simple to do.
Save the following in a new folder as docker-compose.yml
run this command in the folder -
docker-compose up -d
open http://localhost
Is the mariadb a default part of nextcloud? I’ve seen posts saying to use a separate db so things can be backed up easier, so I was wondering if that’s how you have it set up above.
In this setup the DB is not part of Nextcloud. Both are running in separate services aka containers, which can be administrated independently from each other.
No you can use other databases. It is separate here
I’m my experience, nextcloud is quite I/O bound. The performance of your storage device will greatly affect nextcloud performance. But if you’re already using SSD and the performance still bad, maybe there are other issues with your setup.
For me, speed isn’t the only issue. Everything about nc seems to be cobbled together in the most inconvenient way possible. Updates have always been hit or miss for me - and if you choose to use dockerized versions, you might as well shoot yourself, everything is very slow, even as the only use having it running on a quite capable machine it feels sluggish (not slow, but uncomfortably delayed).
It’s a glorified Dropbox clone, why do I need anything more than a rpi1 for that?
It’s a PHP app inherited from owncloud so at some point you’ll just have to accept it won’t be as performant as apps written in compiled languages (and it also inherit owncloud’s quirks and other annoyance related to its php-based deployment). But this weakness is actually a strength too, being a php app makes extending its functionality very easy, resulting in a lot of community-developed plugins. Basically a trade-off between performance and features + community plugins availability. If you value performance more and don’t need anything beyond file sharing feature, there are plenty of other options right now.
I understand the history, and that may have been an excuse 6 months after the fork, but think about how long nc exists now. And how many features (like migrations) are apparently simply not worked on.
NC is a great example of the current trend of “fuck good design, just throw more silicon at the problem”.
I was thinking about this a couple of weeks ago. I’m running nextcloud in a VM - php recompiler, redis, mariadb, plenty of RAM (4GB). I’m spreading about 80GB of data across a few users, but it’s dog slow on mass upload. If I wanted to upload 1000 images from my phone, it would hours. I moved those photos to my laptop, which was fast, then tried uploading them to nextcloud via the Ubuntu desktop sync app, and it still took almost 2 hours. Nextcloud is backed by RAID6 storage and benchmarks suggest it’s over 300MB/sec write.
I think it has something to do with file transfer overhead (start stop) similar to FTP impacting WebDAV, but that’s pure speculation on my part.
I was wondering what it would take to rewrite Nextcloud core functionality in Java and use some kind of different interface than WebDAV, but I’ve got a lot of irons in the fire at the moment.
2 hours for uploading 1000 photos means it took 7.2s per photo upload. This is very slow, not sure if it’s just webdav overhead. Does uploading large files also slow (e.g. way below your raw network speed)?
Could be related to this if you’re still on an older version: https://github.com/nextcloud/server/issues/33453
LAN is gigabit, and I can sustain Gb speeds in regular file transfers via mounted nfs shares. There isn’t much difference over Wi-Fi (ubiquiti APs). Also running the latest Nc, 27.0.2.1 or whatever it is.