top | item 26236770

Nextcloud Hub 21

208 points| threatofrain | 5 years ago |nextcloud.com

150 comments

order
[+] 40four|5 years ago|reply
I started running a self hosted Nextcloud instance last year, and I couldn’t be happier with it! This release sounds exciting, guess it’s time to go upgrade :)

For those looking to ‘de-Google’ their lives, and control their own data Nextcloud is one of the best options out there.

[+] reasonabl_human|5 years ago|reply
Very easy to setup and maintain with a dedicated unraid box. Grab an old dell enterprise server like the r210 II and put some WD reds in raid + zfs, install unraid, and it’s good to go.

I actually virtualize unraid within esxi so that one small 1U box can be my router / firewall and an unraid machine serving home services. Best setup I’ve ever had and learned so much along the way!

[+] Iolaum|5 years ago|reply
Same here. Happy user of self hosted nextcloud through the nextcloudpi project. It's been so care free I don't remember the setup details any more :)
[+] hexanal|5 years ago|reply
To echo what the other replies are saying: mine has been running on a DigitalOcean droplet since early 2019 and I only had to reboot it once.

It syncs everything, the iOS app and web dashboard are adequate. I would recommend it (but I haven't tried anything else, other than Google Drive or Dropbox, of course)

[+] francis-io|5 years ago|reply
I trialed setting up my own nextcloud instance a while back. It's still very complex to get working in docker. From memory, the card/caldav traefik rewrites are still not working. SSL was complex to setup with Collabora, and still required manual GUI steps to link into Nextcloud (my biggest pet peeve). I also remember getting the initial setup wrong a few times in the initial setup wizard, which required me to delete my whole local config.

Performance was a little slow, but that could be down to my own hardware. It was just consumer grade i5 cpu and a basic SSD, in docker.

The examples they provide are good, but you cant really provide for every different config. I wanted to use traefik, so I brought the complexity on my self.

Heres where I got too, eventually stopping my trial of Nextcloud. https://gist.github.com/francis-io/935be5679b3308f5fbc3fe1bb...

My wishlist for future effort by the devs would be:

- Fully configured via env vars (and in Collabora too). - I would rather any config or state be kept in the db. It makes backup and restore easier. Env vars could be set in the db, and any restart, has the set env vars overwrite anything in the db. I want to have confidence that I can restore a db + files and have a working service come back up. At the moment, I don't trust Nextcloud to always come back up. - Keep config separate from user files. - Focus on improving speed (which it looks like they are adressing with this post). - Focus on more app usability. I remember in portrait it being hard to use.

Overall, the software is great and I'm looking forward to the future, but to store my personal data I will need to have a little more confidence.

(I can't seem to make a bullet point list on HN)

[+] ohthehugemanate|5 years ago|reply
Wow this could not be more different from my experience trying the same.

I ran nextcloud in docker-compose for 2 years, with nginx doing SSL termination in front. Granted I wasn't using the official image; I use the linuxserver.io releases for all my other services so I use them for this, too. Nextcloud's config is all in the DB, except for database and cache connection information in a single config file. PHP's config is in a separate file and some env vars (eg timezone).

I've recently moved it into my home k3s cluster (yeah, i'm one of those people), which means traefik is my new reverse proxy. Works fine. I found I can get traefik to do the DAV redirects at least with the k8s Ingress config, but I don't need to since the linuxserver image includes the redirects in its' nginx configuration.

[+] moistbar|5 years ago|reply
I think you might be overcomplicating this, because the Docker setup of Nextcloud is one of the easiest and most streamlined I've seen on Docker Hub. Including the proxy, all you need to give it is the DNS name, the ports you want open, and where you want the data stored. Traefik is also huge overkill for a personal server, IMO. jwilder/nginx-proxy is braindead simple and has a companion container that will automatically get you LetsEncrypt certs when you make a new container that asks for it. The only thing the default Docker install is missing is a TURN server for group voice/video calls.
[+] johnchristopher|5 years ago|reply
> The examples they provide are good, but you cant really provide for every different config. I wanted to use traefik, so I brought the complexity on my self.

I am with you. But. It's incredible how so many open source projects keep on delivering docker-compose files that either are not compatible with a reverse proxy or bundle a reverse proxy themselves.

It seems like the use case of having traefik/ngninx as a RP which does the SSL termination over how many services you want is fringe practice. Most of the apps/services I encountered could be blind to a RP but I often have to play around it.

> I want to have confidence that I can restore a db + files and have a working service come back up. At the moment, I don't trust Nextcloud to always come back up.

Well. Today OVH tried to upgrade things and it broke my VPS AND my owncloud db. Hopefully I had some sql dump backup but the DB was so borked I couldn't login in it even from root inside the container or in any other way.

I mean: don't trust the app provider to do the backup, set something up yourself.

[+] 3np|5 years ago|reply
Thanks for sharing your experience, given how I treat software it sounds like I would extremely frustrated with some things that "the average user" doesn't mind at all. Sounds like I should give it another year or two before considering Nextcloud (because her, I assume they're working on it!)

> (I can't seem to make a bullet point list on HN)

For short points: indent with two spaces (longer become horrible on mobile). Or just do double newlines between the points like a normal person (;))

[+] mlk|5 years ago|reply
they don't even have a decent CLI client for file syncing, I know you can use any webdav client but the GUI client seems more efficient than anything else I've tried.
[+] l72|5 years ago|reply
I really wish there was an LTS release that was supported for at least 2 years (just bugfixes, no new features). I self host my own instance, and I really just want to set it and forget it.

I don't mind doing low risk patches every few months or weeks, but I don't want to do a major version upgrade every 4-6 months.

I did my last major version upgrade only 15 months ago, and I am now 4 major versions behind, which means:

1) I upgrade from 17->18->19->20->21 and hope nothing breaks!

2) I either start over with the latest version

I like that open source moves fast, but at some point, I just want to stop fiddling with it and let it run with minimal maintenance.

[+] znpy|5 years ago|reply
> 1) I upgrade from 17->18->19->20->21 and hope nothing breaks!

I did a similar path (started from 18 iirc) and nothing broke.

But there's a catch, because I have some safeguards in place:

1. Nextcloud has its own dataset in a ZFS zpool. I take snapshots hourly, and I took a snapshot just before upgrading

2. I run nextcloud and its own postgreql via docker-compose. the docker-compose file along with the configuration and data are stored in nextcloud's own dataset. This means that os-level dependencies are not a problem for me. this also mean that reverting the whole thing to before-upgrade is very easy: just rollback to the before-update snapshot.

3. (unrelated) snapshot are replicated to another location, which means that I might perform the upgrade on that other site and switch the dns when it's done and if i'm satisfied. I don't do that, for my personal use 1-2 hours downtime it's okay.

4. I'll let nextcloud perform its auto-upgrade procedures, take a snapshot after every upgrade, and at the end I'll perform the tasks suggested in the self-assesment page (adding indexes, changing columns types etc).

You don't have a nextcloud problem, you have a system administration problem.

[+] basilgohar|5 years ago|reply
As someone who hosted his own as well, I agree with your sentiment exactly. I've taken down the server that I had hosting my own instance before this, and I am delaying setting up a new one simply because of what you've said here.

I imagine that those of us that want that kind of stability are encouraged to go with their hosted offering, but hopefully they'll see the value in having a slower and/or more stable release process.

For what it's worth, the upgrade process for the last few major versions went mostly without a hitch for me. I do have to give them credit for that. The only thing I continue to struggle with is the encryption design. I always end-up with some odd state for some files I cannot recover from.

[+] nmg|5 years ago|reply
I am a huge fan of Nextcloud and I couldn't agree more. My upgrade path is to just start a new instance with a fresh sync, because I was traumatized by a turbulent and uncertain upgrade on all of my instances once about two years ago. This is a product I love and choose to rely upon for my data, every day. I'm interested in the bells and whistles and I want the platform to succeed - my preference would be an LTS for my critical data, and the option to spin up newer features separately to test before adoption.
[+] 40four|5 years ago|reply
This has spawned a huge thread that I honestly didn't read all of, but someone else mentioned to me they use the 'Community' Snap package.

I did not set mine up with this, but it apparently requires a lot less hands on maintenance. In your case you might be interested.

https://docs.nextcloud.com/server/21/admin_manual/installati...

https://snapcraft.io/nextcloud

Apparently it auto-updates for you, but I'm not sure if it will upgrade major versions, or only security patches.

[+] regularfry|5 years ago|reply
The answer to that ought to be `apt-get install nextcloud-server` and let the distro maintainers step in, really. Unfortunately because you can't skip versions on upgrade, it's not clear how to cleanly do that.
[+] remram|5 years ago|reply
They also raise PHP version requirements. To keep my NextCloud on supported version, I had to update the Linux distribution on my server (was not EOL or anything) to get a PHP that supported versions of NextCloud support...

I just wanted to keep getting bug/security fixes for NextCloud.

[+] FredFS456|5 years ago|reply
In my experience of running my own Nextcloud instance for over 4 years, I've never had an upgrade break my instance. Caveat: I'm on the stable channel and I only update when the client prompts me to update, which is a few point releases into a new release.
[+] nucleardog|5 years ago|reply
> 1) I upgrade from 17->18->19->20->21 and hope nothing breaks!

I've done this since about version 11. And I usually only get around to upgrading every few versions so it's been like... 11->12->13->14, 14->15->16, 16->17->18->19.

I do each upgrade one by one. Upgrade, login, check system status and resolve any additional steps it suggests (e.g., adding indices/columns, etc) then jump right into the next upgrade.

I've never had one fail on me. Even doing 3-4 major versions at a time it's usually less than a half hour problem.

[+] agilob|5 years ago|reply
Haha thanks to your comment I noticed I'm using nextCloud 16. I'm going to make a few upgrades now and I'll tell you how it went.

Edit:

Miration 18->19 is now stuck on

Step 4 is currently in process. Please reload this page later.

which is downloading zip with new version...

Edit2:

I restarted installation multiple times, increased pfp-fpm and nginx timeout to 660 seconds and still getting this error.

Not today...

[+] m463|5 years ago|reply
I agree - I wish it was more stable and a little less promiscuous. Having your instance have to access the cloud for apps and updates is sort of counter to the "control your own server" sort of mentality.

Sort of like docker - do you have to go through their root namespace for everything?

[+] tcit|5 years ago|reply
They can offer that with a subscription.
[+] rektide|5 years ago|reply
> The High Performance Back-end for Files in Nextcloud is an optional, binary component developed in Rust. It is capable of maintaining a direct connection with desktop and web clients, providing file change and notification updates to the clients.

petty as heck but nextcloud being entirely php (afaik) until now has been a huge turn off. Moving some critical online bits to rust is a huge indicator to me that the team is taking resource consumption & performance optimization seriously.

[+] anderspitman|5 years ago|reply
When it comes to self-hosting, there are 2 key components: the service software itself (ie Nextcloud), and the network plumbing to connect everything together. The networking has gotten quite complex due to NAT, HTTPS, DNS, IPv4 exhaustion, etc.

I maintain a list of software to help simplify the networking bits:

https://github.com/anderspitman/awesome-tunneling

[+] mwsfc|5 years ago|reply
Thanks for the reference. Spinning up individual containers has become quite easy these days, but agree networking still takes some work to get everything playing together nicely.
[+] MayeulC|5 years ago|reply
I'm not sure there is such a thing, but I would like to see some CRDT format being adopted as a first-class data structure inside of nextcloud. This could be built upon for things such as the Whiteboard, but also note-taking applications (Carnet, nextcloud notes...), contacts, and more.

Also, I wish nextcloud talk was using Matrix, there seems to be much duplicated effort between the two, and I am not even sure Nextcloud Talk federates.

[+] sundarurfriend|5 years ago|reply
To the people who have been using Nextcloud successfully for years: is your usage mainly PC-PC or PC-iOS synchronization? Is anyone here running PC-Android synchronization with files that change more often than once a day?

My experience with the Nextcloud Android app is that the automatic sync is quite limited (eg. https://github.com/nextcloud/android/issues/757, https://github.com/nextcloud/android/issues/19). Every change has to be manually synced by opening the app and navigating to the Sync option for each file. This is pretty much a dealbreaker for me, but it looks like a lot of people are using Nextcloud successfully. So I'm curious how your usage differs from mine - do you only use it for static unchanging files that don't need to be synchronized that often, or is the sync situation smoother on other devices?

[+] ntnsndr|5 years ago|reply
I use it daily for syncing among multiple Linux PCs and two Android/Lineage devices. I actually like that mobile sync is manual because my usage is so heavy it would involve moving around a lot of data unnecessarily.

Setting up my wife with NC on mobile, however, reminded me of lots of ways in which I've accustomed myself to some pretty weird behaviors, like manual syncing, the built in text editor that doesn't load without being online.

I love NC (I use it both for personal needs and with students in my lab) but there are definitely UX issues that present a barrier to new users.

[+] bisby|5 years ago|reply
I use it for the automatic photos upload primarily. But anything else that changes rapidly, I use a dedicated app. I've never had major issues with the core nextcloud app, but I also don't use it for anything before the photo upload.

DAVx5 for caldav stuff, Nextcloud Notes for notes.. These apps seem to handle the sync separately on their own.

[+] e-Minguez|5 years ago|reply
I'm a little bit worried with the shift from a 'cloud' storage solution to a groupware software... I only need the storage bits but it seems they are focusing on the groupware thing lately...
[+] nodja|5 years ago|reply
This is my problem with it as well. I used to have a self hosted nextcloud instance, but my main usage was for the file syncing. Nextcloud seems to be poor to decent at everything it does, but never great. So unless your goal is to have a suite of mediocre appliances that do the bare minimum, nextcloud is good. But all I wanted was a nice and quick way to sync all my files (I'm talking 500k files here) and have some sort of versioning in case I fuck up, so I moved to syncthing.
[+] berkes|5 years ago|reply
I presume that is where the money is.

Either independent contributors who make money as consultants, or a foundation that gets sponsoring, or a commercial company behind the project: enterprise has the money. So inevitable, it will gravitaye towards more enterprisey features.

I'm not saying that I have knowledge about what happens here with Nextcloud. But in FLOSS this has been seen often: from Drupal to LibreOffice: it moves away from 'consumers with simple needs' and towards 'heavy users'.

[+] input_sh|5 years ago|reply
I feel precisely the opposite. Replacing Dropbox is fine, but replacing like the majority of Google's services is waaaay more useful.
[+] laurent123456|5 years ago|reply
They are focusing on entreprise features, because that's where money is.

I also wish they had a separate "light" offer with just the storage and a few basic apps. As it is, I think they are stretching their resources and some part of their offering is going to suffer as a result (we already saw quite a few severe bugs in the past year and some basic functionalities, like file locking or caching, is still not right). Personally I'm only staying with Nextcloud because there's unfortunately no good alternative for now.

[+] m4rtink|5 years ago|reply
Actually there is quite a ton of self hosted cloud storage project but very little those that provide the other services Google has the biggest lock-in on - calendar, contacts, notes, galleries, bookmarks, collaborative editing, etc.

So personally I very glad they are not just trying to be yet another cloud storage tool but also working on these IMHO more important cloud services.

[+] achempion|5 years ago|reply
The project is great and I made simple setup in docker to play around with it. There is official docker image you can use https://hub.docker.com/_/nextcloud.

The problem I see with similar services is they all trying to pack everything. You can also install external components into your system.

What it means in practice is huge area for security vulnerabilities, challenge to host/upgrade it at home on weekends and very complex user interface (easy to mess up with privacy settings).

I really scared to host such systems because of all related issues. Maybe it isn't big deal at all.

Probably, most of home use cases can be resolved by simple XMPP server (video calls, group chat, image/links sharing) plus some shared folder across the network to store some files/photos.

[+] ev1|5 years ago|reply
I haven't used Nextcloud before, do you happen to know if there's an easy way to just want the file sharing?

I don't care for whiteboards or collaboration, I just want a Dropbox equivalent where I can upload files and give other people public or one-time or expiring links to download/wget.

[+] instb3at|5 years ago|reply
I use Nextcloud for almost all the stuff I do in day to day life. I run it in docker swarm mode on a 5yr old pc running Debian @home. Freemyip for updating my dynamic IP address

What I use it for ? 1. Notes (Use FSnotes and sync md files) 2. Keypassxc for passwords (sync it using Nextcloud) 3. Photos upload (From Amazon & Google) 4. My recordings & videos 5. Documents (Moved from G Drive) 6. Bookmarks

Where I would like to see improvements? Photos - badly want this to be usable on mobile phones

I am happy overall with Nextcloud. The only time I screwed up is when I didn't know about the upgrade process. Tried moving from 18→20 and totally gone wrong.

[+] lou1306|5 years ago|reply
Personally, I love NextCloud as a contacts/calendar storage. I have an instance from a cloud provider, I use DAVx5 [1] to sync with my Android phone, and I set up a CalDAV account on my MacOS, so I can see nextCloud calendars on Calendar.app. Sadly, NextCloud's CardDAV doen not seem to work on macOS, but that's a relatively minor issue.

[1]: https://www.davx5.com/

[+] goalieca|5 years ago|reply
I’m in awe of something like Debian where entire mirrors have been served on ancient computers with reasonable performance. Perhaps there is a configuration issue, but at my work it is one of the slowest services aside from jira. I actually try to avoid opening jira and next cloud because it’s frustratingly slow to browse.

Edit: I was eager to see the link with the 10x performance number. I do hope it improves because we are in need of a service like that.

[+] Aachen|5 years ago|reply
Does that mean it's now reliable when putting it in a public-facing place? An orga that shall not be named used nextcloud for various important things and had it connected to the Internet, which for modern open source software is usually okay. But then a friend found that you can take the whole system down from a 56k modem (pre-auth) and it had to be recommended the Orga keep it internal, which was an issue because they iirc also used it for file sharing with externals.

As far as I know it's very rare that someone bothers with exploiting denial of service bugs, but given how trivial (triggerable by hand) this was, it's still a bit risky.

The bug was of course reported to them but closed as wontfix dontcare because there were too many other ways of taking it down already. Php was blamed iirc (which really isn't the culprit).

[+] twobitshifter|5 years ago|reply
I tried picloud which packages nextcloud up for the raspberry pi 3B+. It really wasn’t able to handle even a single user but maybe I had something misconfigured.
[+] kissgyorgy|5 years ago|reply
If you check my earlier comments, I often praise Nextcloud and the team behind it, but this is even more crazier by their own standards!
[+] swiley|5 years ago|reply
I'm still not convinced this is better than a shell account with a c-git and prosody instance.
[+] foolinaround|5 years ago|reply
what would be great is to allow a client to connect to more than 1 nextcloud instances.

For example, from my machine, i can connect to my nextcloud, and also to some folders shared from my group's nextcloud.

[+] kderbyma|5 years ago|reply
nextcloud is awesome. I have been using it on my self hosted cloud and it's been fantastic. some features are better than the cloud providers
[+] pid_0|5 years ago|reply
I wish companies would stop using emojis completely. Its just weird