I tried Nextcloud a while back and was not impressed - I had issues withe the speed of the Windows sync that were determined to be “normal” with no roadmap to getting fixed. I’m now planning to move off Windows desktop so that won’t be an issue - so I thought I’d try again.
I went to nextcloud.com, clicked on Download-> Nextcloud server -> All-in-one -> Docker image - Setup AIO. This took me to the github README at Docker section. I’m already running docker for other things so I read the instructions, setup a new filesystem for my data directory and ran the suggested docker command with an appropriate “–env NEXTCLOUD_DATADIR=”. I’m then left with a terminal running docker in the foreground - not a great way to run a background server but ok, I’ve been around for a while and can figure out how to make it autostart in the background ongoing. So I move on to the next step - open my browser at the appropriate URL and I’m presented with a simple page asking me to “Log in using your Nextcloud AIO passphrase:”. I don’t have a Nextcloud AIO passphrase and nothing I’ve read so far has mentioned it. When I search for it I get some results on how to reset it, but not much help. I could probably figure that out too, but after reading some more I found that Nextcloud requires a public hostname and can’t work with a local name or IP address. I’m already running my home LAN with OpenVPN and access it from anywhere as “local” - I don’t really want to create a new path into my home network just for Nextcloud.
I’m sorry - I know this sounds like a disgruntled rant and I guess it is. I just want to check that I’m not missing obvious things before I give up again. All I want is a simple file sync setup like onedrive but without the microsoft.
If you only need onedrive replacement. You might want to try seafile.
I like nextcloud tbh even it tries to do everything and not being really good at it. When i set it up the first time. I scoured the internet like you wouldnt believe. Took me couple of days optimizing it.
Now, it runs okay. Has been a few months since it set it up. No complain except a couple of weeks ago android app wont auto upload for some reason, had to logout and login back.
My main use is cloud storage, photos, note, task, contacts and calendar. Works fine on my android, linux and my wife’s iphone.
I just use SMB shares on my NAS. Why over think it?
I didn’t know anything about docker when I set up my NC years ago, so I ran it as a snap on bare metal. Man, it’s gotten so much better! It used to really suck. Like, simple file transfers just didn’t work half the time, so I’d be retrying the same thing over and over… A few years ago, I literally migrated it from bare metal to a VM, but kept the exact same install. I have so much crap on it now, I think I’ll never bother switching it out to docker, just because of the inconvenience. I know the snap version can just run using a local hostname, you just have to set it in trusted domains setting. Might be the same in the docker image?
I also had bad luck with nextcloud, so recently I’ve set up SFTPgo and it works rather well and it’s only for files. You can either download and upload the files through the WebUI or you can mount them over the network to your OS.
Use docker or podman compose https://hub.docker.com/_/nextcloud/
Nextcloud does not need a domain. Ip is fine.
Does it need to be an external IP? I was going to look into setting it up soon but if that’s the case I think I’ll just stick with SMB shares or maybe try syncthing
No
No internal domain could connect to anything if it wasn’t resolved for an ip.
Local IPv4 work. Global ipv4 work. Ipv6 works. Mesh vpn ips work. Any ip works.
You may have to adjust the config.php (iirc) to add the ip/domain to trusted domains
Use docker or podman compose https://hub.docker.com/_/nextcloud/
I could do that - I guess I was just pointing out that someone coming to Nextcloud and following the install instructions does not have a great experience.
Nextcloud does not need a domain. Ip is fine.
So, their documentation is wrong?
Again - not a great experience for a first time user.
Nextcloud wants you to buy their stuff.
If you want to selfhost you have to read “everything” and know what you do.
I have no idea about that all in one setup. But yes, the sentence “nextcloud can not be reached via IP” is wrong
For files I just use WebDAV that’s built in to Apache. It’s really not fancy, but does all I need.
There’s a lot of stuff going on here, so let me break down your post for each issue:
-
You need to understand the difference between a
docker run
command, and detaching to run a container in the background. Just running it with ‘run’ keeps it in the foreground. -
For the passphrase issue: https://github.com/nextcloud/all-in-one/discussions/1786
-
Lastly, if you’re not family with containers, and this is a single purpose machine, you’d be better off just running the bare project on the host. If there’s no need for containerization, just skip it.
You need to understand the difference between a docker run command, and detaching to run a container in the background. Just running it with ‘run’ keeps it in the foreground.
Yes, I understand this. I was just highlighting that it’s not a great experience for a new user to follow the instructions to setup a server and be left with it running in the foreground.
For the passphrase issue: https://github.com/nextcloud/all-in-one/discussions/1786
Thanks! This should get me past my current hurdle so I can do some more testing. Again - not a great experience to have to come to a forum to get help to find a passphrase. I’m pretty sure I didn’t miss any steps?
Lastly, if you’re not familiar with containers, and this is a single purpose machine, you’d be better off just running the bare project on the host. If there’s no need for containerization, just skip it.
I’m familiar with containers, but think they’re overused. Stupid little things that are a single Python script (for example) shipping as a Docker image! But, I thought Nextcloud was complex enough to be worthy of a container? This is not a single purpose machine, but I’m an old, retired, sysadmin - I have no problem running a few different servers on the same host.
Are you referring to the “Archive” Community Project installation method?
No, just clone the project and run it without a container. The docs cover that as well.
-
I think you Just need nginx with one module: https://nginx.org/ru/docs/http/ngx_http_dav_module.html That is filestorage only. WebDAV client exists for all platforms.
Seafile. It’s super fast and lightweight. There are some caveats though:
-
Data is stored in git-like chunks on the server side. There is Seafuse and Sea drive functions that you can leverage to “assemble” the data on server side for backups. I personally use rclone mount, then backup.
-
Paywall hiding some features. The community edition is free but is missing some features that pro has. Pro edition is free for 3 or less users.
-
Documentation isn’t great. The forum is active so that’s helpful, but some of the docs take some time to understand
-
Chinese owned. As far as I can tell, there is no call home for a self hosted server, so I don’t think it’s a worry in that case.
All that said, I like it much better than Syncthing for it’s selective sync. All files on each client are synced to the server. But unlike Syncthing, it doesn’t sync all data with each client. This is vital for me with some devices with small storage drives, so I would t want all files to sync. Yet I can still reach to the server from any client and pull data from any other client. Syncthing has an ignore flag, but that seemed way more trouble to setup than just sticking with Seafile.
-
Agreed, nextcloud is a beast with lots of whistles, if you don’t need them you can have simpler solutions
This my approach here https://wiki.gardiol.org/doku.php?id=selfhost%3Afileserver
And I stated using AList which is a funny piece of software that has great potential. See here https://wiki.gardiol.org/doku.php?id=services%3Aalist
There are a number of ways to install nextcloud, and docker is only one of those.
Yes, NC isn’t ideal in many ways, but it shouldn’t be as painful as you’re describing to run it.
Docker is at least two of those, AIO vs non-AIO image.
I’ve never used the AIO image. I’ve heard it’s weird. This is my compose file for the community image:
compose.yaml
volumes: db: services: db: image: mariadb:10.6 restart: always command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW volumes: - db:/var/lib/mysql secrets: - mysql_root_password - mysql_nextcloud_password environment: - MYSQL_ROOT_PASSWORD_FILE=/run/secrets/mysql_root_password - MYSQL_PASSWORD_FILE=/run/secrets/mysql_nextcloud_password - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud nextcloud: image: nextcloud restart: always ports: - 8080:80 depends_on: - db links: - db volumes: - /var/www/html:/var/www/html - /srv/data:/srv/data secrets: - mysql_nextcloud_password environment: - MYSQL_PASSWORD_FILE=/run/secrets/mysql_nextcloud_password - MYSQL_DATABASE=nextcloud - MYSQL_USER=nextcloud - MYSQL_HOST=db secrets: mysql_root_password: file: ./secrets/mysql_root_password.txt mysql_nextcloud_password: file: ./secrets/mysql_nextcloud_password.txt
You can access it on port 8080 and perform the initial setup manually. For the database server address, use the
db
hostname. You’ll have to use a reverse proxy for HTTPS.You could also try OpenCloud, which is a Go rewrite of ownCloud.
You could also try OpenCloud, which is a Go rewrite of ownCloud.
A fork of the internal Owncloud Go rewrite.
Yup:
- ownCloud -> NextCloud
- ownCloud Infinite Scale -> OpenCloud
I’m testing out OCIS, and will probably switch to OpenCloud.
I’ve never used the AIO image. I’ve heard it’s weird.
It does seem to be. So, I find it weird that the “core” documentation leads a new user to installing AIO.
You could also try OpenCloud, which is a Go rewrite of ownCloud.
Sounds interesting - thanks.
Nextcloud it just too heavy I totally agree, and everything feels slow and sluggish.
For just files I use Syncthing and couldn’t be happier, it just works in the background without a central server just syncs the files between phones, PCs and laptops by itself. I set it up like 5 years ago when I had enough of Nextcloud and to be honest most of the time I forget that I have it, but I use it every day to sync my password database for KeePassXC, my music, my private and work documents between all my devices.
So, use something else, like Seafile.
So, use something else
That’s why I’m here - looking for suggestions
like Seafile.
I’ll have another look - you’re not the only person to suggest it. My recollection is that it seemed to be old and not really maintained.
I’ve been running Seafile for over ten years. They released version 12.0 just last month. I’m really not sure why people have this impression that it’s not maintained.
Seafile updates slowly because it’s very much intended as an enterprise product. It has minimal bells and whistles, but the core functionality is reliable and works well. It’s more of a BlackBerry than an iPhone.
In the side by side tests I’ve seen it syncs a lot faster than Nextcloud. I keep my entire documents, downloads and picture folders synced there across three different machines, nearly 300GB of data in total, and I can wipe my laptop and sync all my files back in under and hour. File transfers basically cap out at network speed, even with large numbers of small files. I’ve used the desktop client, the drive client and the mobile client and never had any complaints with any of them.
Sidenote, if you create an account on their site they’ll give you a pro license for up to three users, free forever.
The documentation is a bit of a beast, but worth reading thoroughly. Setup is a little fiddly compared to Nextcloud (that’s a major turn off for a lot of people, understandably so). If you have questions message me and I’ll try to help. If you go with the free pro license, be sure to enable offline garbage collection, it’ll help keep your storage use under control.
Anyway, I really like it, works well for me. Definitely worth trying out.
I went from Seafile to Nextcloud with family file sharing as the primary usage. I’m using the AIO docker installation without issues.
This might not help, but I never experienced the issues you had.
(I moved away from Seafile due to - in my opinion - it dying a slow death with less and less support)