A newbie's guide to self-hosting with YunoHost. Part 3: Let’s install NextCloud
You know how some of your most vivid memories go back to moments when you were scared or you tackled a difficult thing for the first time? Well, I still remember the fear and trepidation I felt when I was about to install and set up my first self-hosted app: the microblogging app GoToSocial. This was back in December 2024 when the world of self-hosting was still novel to me. A year later, empowered by the ease of use of YunoHost and several adventures running commands in Terminal, I am here to tell newbies: welcome to this exciting new adventure! My goal is to guide you and make the process simpler and less stress-inducing.
I ran a poll on Mastodon last fall, asking people which FOSS app I should showcase in my first self-hosting tutorial. NextCloud won by a large margin.
Nextcloud - Open source content collaboration platform
The most popular open source content collaboration platform for tens of millions of users at thousands of organizations across the globeNextcloud
How to describe NextCloud for someone who has never heard of it? It’s a bit of a challenge because NextCloud does so much and has an app store where you can install numerous add-ons to add wonderful functionalities. So, to simplify things, let me share with you how I have personally been using NextCloud: as a replacement for Google Drive, WeTransfer and Dropbox.
In June of last year I set up a NextCloud server in order to make it easier to share alternate cuts of my Fedi intro video and to allow people to download screenshots and foreign language subtitles:a screenshot showing the NextCloud folder for my Fedi promo video
Typically I would have used Dropbox for something like this, but I quit Dropbox in early November 2024 when I began my personal journey of independence from U.S. based Big Tech platforms. NextCloud became a natural replacement for Big Tech services I had relied on. And it has worked wonderfully.
Now, if you are just starting with your self-hosting adventures, I would not recommend using your brand new personal NextCloud to store sensitive documents or things for which you do not have a backup. But it’s a good starting place for a journey to tech independence. If in your job or daily life you collaborate with others and need a place to store and share files quickly and easily, then NextCloud is for you. I’d love to show you how you can set it up.
If you followed my previous tutorials (part 1, part 2) and you have a VPS with YunoHost installed and a domain name associated to it, then you’re ready go get started. Otherwise I would recommend you follow the steps in my previous tutorial ("A newbie's guide to self-hosting with YunoHost. Part 2: installation & setup"); from start to finish the process should take about 30 minutes.
Ready to install NextCloud?
Preparation: some good housekeeping practices first
One of the most important lessons I learned in my first year of self-hosting is that you can never be too careful with backups. Before running any operations that may go wrong, it's always a good idea to take a snapshot of your VPS: this will record the state of the VPS as it is and allow you to go back to it, restoring it, in case anything goes awry.
Before I install or update any apps, I typically log into my VPS dashboard on Hostinger, click on VPS, select my VPS running YunoHost, and click on the button "Manage." This opens up the dashboard for my VPS. On the left, there is a menu with various options... select "backups and monitoring" and then "snapshots & backups."a screenshot of my VPS dashboard
Scroll down the page, past "auto backups", until you see "Snapshot".
Click on the button that reads "New snapshot" - this will make a copy of your entire VPS and keep it here in case you want to revert back to it:
Better safe than sorry. Honestly the few times I messed up in my self-hosting adventures I was either happy I took a snapshot... or smacked my forehead and lamented my stupidity for forgetting to do so.
Moving on...
Step 1: log in and add a subdomain
⏳ Estimated time: 5 minutes
Log onto your YunoHost server and from the dashboard click on "Domains":a screenshot of the YunoHost dashboard
On the "Domains" page, click on the green button "Add domain":
Then check the option "I want to add a subdomain of an already added domain" (again, here I am assuming you followed all the steps in my previous tutorial and you have a main domain associated to your YunoHost installation):a screenshot showing the screen for "Add domain" in the YunoHost dashboard
You can call this whatever you'd like: nextcloud, drive, cloud, docs, nc - it doesn't really matter. Then click on the green button "Add."
When you do that, YunoHost will start its magic and take care of things:
The process may take a while. It's typical to see this on screen:
When the process completes, your new subdomain - which you will use for NextCloud - should appear in your "Domains" list.
Click on it and then when you are on the subdomain's page click on "DNS":
I have email sending and reception turned off; I simply add:
- A
- AAAA
- CAA
records for that subdomain (CAA is the SSL certificate). Just log onto your domain name registrar, go to the "Manage DNS" page and add the records according to YunoHost's instructions.
Once you've added the CAA record, go back to the YunoHost page for your subdomain and click on "Certificate." Then proceed to ignore diagnostics checks and click on the button to install the Let's Encrypt certificate. Within a few seconds, you should see a green line with a thumbs up and the confirmation message that you're now using a valid Let's Encrypt certificate.
Great! Now you have a subdomain ready for the installation of a YunoHost app.
Step 2: install NextCloud
⏳ Estimated time: 5-10 minutes*
And now we get to the exciting part: installing our first app with YunoHost!
Please do not be intimidated by the "estimated time: 5-10 minutes" because all you have to do is click on a couple of buttons, sit back, and let YunoHost do the heavy lifting in the background. So a more accurate estimate for the time it would take YOU dear newbie to install an app is... less than a minute.
From your server's Dashboard go to "Applications" and click on the green button "Install an app".
You'll be directed to YunoHost's app catalog:a screenshot showing YunoHost's app catalog
In the search bar at the top (there's a greyed out box with the message "search for apps") type "Nextcloud" and then click on it.YunoHost's app catalog
You're now getting ready to install NextCloud on your VPS. All you have to do is adjust a few more settings:the NextCloud installation screen on YunoHost
Choose the domain where this app should be installed:
Important: select the subdomain you just set up for NextCloud in step 1. Do NOT put it on the domain you use to log onto your YunoHost.
Choose the URL path where the app should be installed:
Totally up to you; you're free to keep "nextcloud" or name the directory whatever you wish.
Choose an administrator user for this app:
Nothing to change here, it's your YunoHost admin account.
Who should have access to this app?
I change access privileges from "Visitors" to "Admin" - but you can still share files from your NextCloud with the instance set up like this.
Add the users' home directory in Nextcloud?
Just keep "no" here for now.
And you're ready. All you have to do now is click on the green button "Install" and let YunoHost do its magic.a screenshot showing YunoHost in the process of installing NextCloud
It's typical for the process to take anywhere from 5 to 10 minutes. Just sit back, relax and don't press any keys.
After NextCloud is successfully installed on your server, it will automatically appear here in your Applications list.a screenshot showing the Applications page of my YunoHost, which is now listing NextCloud and Umami
Step 3: set up your NextCloud
Congratulations! You just installed your first self-hosted app! Now let's dive in.
Click on NextCloud in the Applications page. You will be directed to the settings page, which tells you which version of NextCloud you are running and lets you adjust various parameters. No more tweaking for now: all you have to do is click on the green button at the top of the page that reads "Open this app":
NextCloud then offers you a quick orientation to show some of its latest features. You can skip through the steps or watch the videos - up to you:
screenshots showing the walkthrough when you first log onto your NextCloud instance
NextCloud offers apps for iOS and Android devices, as well as a desktop app for Windows, MacOS and Linux (yay).
Once you've completed this walkthrough, you will find yourself on the home page for your NextCloud, which lists several "recommended files" - pre-installed onboarding files that you are safe to delete... or go through, if you're curious to see the file types that NextCloud supports.
If you click on the folder icon in the top left corner of the screen, you will see a classic file view:
And if you click on the circle with your initials in the upper right corner, you will see a settings menu:
If you click on Apps, you'll be directed to NextCloud's "App Store" where you can install a lot of add-ons. As you can see from the menu in the left column, the apps are organized by category:
- Files
- Games
- Integration
- Monitoring
- Multimedia
- Office & text
- Organization
- Search
- Security
If you click on a category - let's say "office & text" - you can find useful add-ons like NextCloud office, which allows you to create, edit and share documents directly in your browser. All you have to do is to click on the "Download and enable" button.
This is by no means meant to be a NextCloud tutorial, but rather a show and tell of how to install an app via YunoHost. I could spend hours showing off what NextCloud can do and feel like I forgot something. It's such a powerful, versatile tool that no short blog post could do it justice. I simply invite you to explore it as it truly is a wonderful tool and an amazing first step in the quest for digital sovereignty.
I hope you found this guide useful. Next time I will write about backups and security!
Thanks for being here,
Elena
P.S.: I set up a test NextCloud instance to take screenshots of the whole process for this article, but for security reasons I have now deleted it - along with DNS records. So if you attempt to visit the URL I show off in this tutorial, you will get an error message
💓 Did you enjoy this post? Share it with a friend!
👫 Follow me on Mastodon. All my other links are available here: elena.social
📽️ If you'd like to support my work, you could buy or rent my documentary The Illusionists on the globalization of beauty:
The Illusionists
THE ILLUSIONISTS is an award-winning documentary about the globalization of beauty and the dark side of advertising.
💌 If you'd like to say hi, my contact information is here
✏️ If this post resonated with you, leave a comment!
📺 Introducing the Fediverse: a New Era of Social Media
A 4 minute video that aims to introduce the Fediverse to people not familiar with itElena Rossini
A newbie's guide to self-hosting with YunoHost. Part 1: reasons + requirements
Hi!I'm Elena, an Italian photographer, filmmaker and writer with very few coding skills. Despite this, for the past year I have been able to self-host many essential services: social media accounts (microblogging, photo sharing, video sharing), a LinkTree alternative for all my links and a powerful private file hosting service.
How was I able to do all this?
Simple: with YunoHost, a system that anyone can easily install on a server with little technical knowledge and that gives people access to hundreds of free, open source apps.
YunoHost: garden your own piece of the Internet!
YunoHost is a system that installs itself on a server and allows you to install and maintain - with very little technical knowledge - digital services (apps) that you control.
I had been curious about the world of self-hosting since joining the Fediverse in November 2022. Truth be told, when I was on Big Tech social platforms I had never come across the concept of “self-hosting”. But on the Fediverse, this is something that many people raved about. It just seemed so unattainable to me, a regular person without any coding skills. YunoHost changed all that.What to Expect
This is the first post in a 4 part series that aims to inspire and encourage anyone curious about self-hosting to follow my steps. Here is what to expect:
- Part 1 (this post) will cover: why self-host? And what are the things you need to get started on this journey?
- Part 2: How to install YunoHost and associate a domain to it
- Part 3: How to install and set up NextCloud, a file hosting service (and so much more)
- Part 4: How to backup your system
It’s worth repeating that I was a complete newbie a year ago. I still feel that way in many respects.
It took me a long time to get started because I thought that self-hosting was complicated and unattainable for someone like me. Most guides out there are written by highly skilled people with a background in programming. I couldn’t find anything written in simple, accessible terms from the POV of a true newbie. And that’s why I’m writing this… I’m a newbie (ok, semi newbie) and I still speak your language.
I think that breaking up the process in 4 parts will make the endeavor more accessible and appealing to fellow newbies.
When a lifetime ago I embarked on a journey to make a feature-length documentary with interviews in 8 countries, across 4 continents (hello The Illusionists), the whole endeavor seemed so difficult - impossible even. But breaking the project down in small tasks made it appear manageable. Self-hosting is the same thing (but a lot easier!)
Why self-host?
Fully owning your data and being able to use it in an independent, autonomous way is a very powerful thing.In this day and age the term “digital sovereignty” is being evoked more and more by governments, public institutions and activists… they are warning about the dangers of having their data locked-in by Big Tech platforms.
Some concrete examples: the devolution of Twitter into X. I had been on Twitter for 14 YEARS when a billionaire with questionable intentions decided to purchase it. The platform immediately became hostile to people like me – a progressive activist. I had no choice but to leave. Was I able to take my followers, my following list and my posts with me? Of course not. X is a walled garden. This is why I find the Fediverse so appealing: open, interoperable systems that offer data portability.
Thanks to YunoHost I have become the admin of my own social platform: aseachange.com, a micro-blogging platform powered by GoToSocial and connected to the whole Fediverse. The first few days since creating that instance I would look at myself in the mirror and proudly smile, thinking: “I’m the admin of my network. Nobody can come in and take this away from me.” And that’s a very empowering feeling.
No billionaire can now interfere with my social media experience. But there are other reasons to self-host, like: saving money and having control of your files.
Up until November of last year, I used to pay Dropbox.com over 120 Euros a year for their cloud storage. It seemed a little excessive while being a filmmaker / film editor on hiatus. I decided to download all my data to a 12TB drive… and use Proton Drive for essential files I wanted to keep in the cloud, since I was already paying Proton for my email.
Well, downloading all my data from Dropbox proved long and tricky, since some folders and files were only in the cloud. Three weeks and almost one terabyte of data later, I finally had all my files on a computer, easily accessible with a simple search. Awesome!
Then I decided to upload some essentials to Proton Drive and little did I know, Proton Drive automatically deleted them from my computer without asking, only keeping them in the cloud. Never again, I thought!
Now all my files are on that 12 TB drive, which syncs daily with a portable drive… and whenever I go to my in-laws’ or my parents in Italy, I bring that portable drive with me and I sync all my files with drives I keep there. I have an offline system… but I also use a self-hosted NextCloud instance as a replacement for Google Drive, Dropbox and WeTransfer. I feel back in control.
Technical Requirements to get started
There are so many different ways to self-host. Here I’d like to share with you what I’m using - and have been using successfully for a year - with zero complaints.
- a VPS (virtual private server) that I pay 5 Euros a month for
- a domain name (i.e. elenarossini.com)
Sure, the YunoHost guide explains that you can use a Raspberry Pi or re-purpose an old computer to use as a server. But remember, this is a guide for NEWBIES. I tried doing things that way and it added extra complication to the process. When you use a virtual private server that takes a lot of worry and maintenance out of the equation. It just works. You don’t have to think about uptime, connectivity issues or exposing your home network to the world wide web.
You don’t have money for a domain name? The YunoHost documentation says you can use .nohost.me, .noho.st and ynh.fr domains which are offered by the YunoHost Project. But I find that it’s far more empowering to own your own domain name. And with some providers you could get a domain name for as little as one Euro A YEAR. Sure you can spare one Euro for a whole year?
VPS Providers
I’m passionate about digital sovereignty and independence from U.S. tech giants especially following political events from last year.All the self-hosted services I use (VPS and domain name) are from companies based in Europe. There is a superb website called European Alternatives that lists multiple categories of digital services you can sign up for:
European virtual private server (VPS) hosters | European Alternatives
A virtual private server (VPS) hoster provides virtual servers with predefined RAM, storage, traffic and virtual cores.European Alternatives
For VPS providers, I have tried and extensively used Hostinger, OVH and Hetzner.Hostinger is ideal for true beginners
a screenshot of Hostinger's Dashboard
For a true newbie, I would recommend Hostinger as it has a beautifully designed dashboard that is intuitive - for anyone - and direct access to a virtual terminal that you open up in your browser. You can add automated daily backups for as little as 2.99 a month. If you’re just starting out with self-hosting and don’t exactly know what you are doing, I would recommend going with Hostinger even if it’s a little more expensive than other providers. Everything in its interface is simple and clean and easy to understand.Hostinger’s most basic plan (KMV1) for 5.99 a month is a beast: I had multiple projects running on it with zero hitches (microblogging, photo sharing, file sharing). I eventually had to upgrade to a higher tier because of PeerTube (video hosting requires a lot of bandwidth). But otherwise I would have stayed on the most basic plan. It’s really good.
The direct link to sign up to a basic VPS on Hostinger:
Hostinger - Bring Your Idea Online With a Website
HostingerHostinger
(disclaimer: it’s a referral code and I get a little commission if you use it… but you also get an extra 20% off)Hetzner is the solid choice for more advanced users
a screenshot of Hetzner's dashboard
Hetzner is now my new favorite VPS provider because it has a LOT more options and you can easily start and stop servers and start over… as well as add multiple servers and projects. But this is something for more advanced users. Creating an account on Hostinger takes a few minutes; on Hetzner you have to jump through a few hoops: they want you to verify your identity by uploading a government ID… or pre-paying 20 Euros via Paypal.Once in, I was initially a little lost with the dashboard and all the options it showed. I would recommend it for more advanced users and if you want to get more value out of the money you are spending. With Hetzner you need to use the real Terminal app on your computer… so again, proceed with caution if you are a total newbie, as it may be a little more complicated than necessary for you.
I don’t have a referral code for Hetzner but the amazing Ozoned - host of Fireside Fedi - does… so if you use this, he gets a little commission.
The most basic plan will do (I will explain below what to do, step by step).
Are you ready? Have you decided whether you want to use Hostinger or Hetzner? In the following steps I will explain what to do for each. Obviously you only need one VPS. Hostinger is my recommended choice for true newbies and Hetzner the one for more advanced users or if you want to save money long-term.
Signing up for a VPS on Hostinger
Purchase a basic KMV1 plan (the longer the duration, the cheaper the plan will be).Then, once you have your VPS, you proceed to:
- Choose server location: the one geographically closest to you
- Choose an operating system: Debian — version 12 (by default it’s 13, but it doesn't work with YunoHost yet)
- Secure your VPS access: for now, for a true newbie, I would create a strong root password (you can always add an SSH key later, plus YunoHost disables root access)
Signing up for a VPS on Hetzner
On Hetzner, if you selected to pre-pay 20 Euros to verify your identity, you're all set to go. Log in to your account, create a new project (you can name it whatever you’d like) and then select “Create a server”.Then select:
- Cost-optimized
- x86
- the most affordable plan (in my case it showed CX23, 4GB of RAM, 40GB of disk space for 3.59 a month)
- Location: the one geographically closest to you
- Image: Debian 12 (very important! the default is 13 but it won’t work)
- Keep IPv4 and IPv6 checked
- Optional: give the server a name
This may seem controversial but again for a TRUE NEWBIE I wouldn’t recommend setting up SSH keys… they add an extra layer of complexity if you don’t know what you are doing. The YunoHost project has security built in with disabled root access and Fail2Ban automatically installed. So dear experienced sysadmins, if you read this and you shudder: I understand! But there’s no need for someone starting out… plus you can always add an SSH key later.
Then click on “Create and Buy Now” and a new server will be generated for you by Hetzner. You’ll get the username and password via email.
Domain Name
The site European Alternatives also lists domain name providers based in Europe:
European domain name registrars | European Alternatives
Domain name registrars are companies that manages the reservation of Internet domain names.European Alternatives
If you use Hostinger for the VPS, for simplicity’s and convenience’s sake I would stick to it for the domain name, too. Everything in one place.Otherwise I have also used IONOS and found some great deals with them: a domain for 1 Euro a year!
IONOS | Hosting Provider: Domains, Websites, Servers.
Hosting and cloud solutions for all businesses. Partner with IONOS for intuitive products, expert guidance, and scalable infrastructure.IONOS
Requirements: Mindset
The most important requirement in this brand new self-hosting journey is not hardware or digital services, it’s the right mindset.You can do this. Even if you have little technical knowledge.
For years I thought that self-hosting was impossible for someone like me - a regular person with little coding skills (aside from CSS and HTML). Thing is, it’s in the vested interest of Big Tech companies to make everybody think that self-hosting is very complex, difficult to execute and expensive. "Come to our walled gardens where everything is simple and 'free'" they seem to say. Of course, a convenient illusion for them.
Trust me, after a year of doing this I can confidently say that anyone can self-host with YunoHost in a safe, simple and empowering way.
The thing that instilled confidence in me a year ago was a YouTube tutorial by a YunoHost user who proclaimed several times: “It’s so easy to install and use, even a child could do it.” The video maker used the terms “extremely simple” several times throughout the video… and that’s what finally gave me the courage to get started. Spoiler alert: it was super easy.
All you have to do for this first step is sign up for a VPS, select a very basic plan with Debian 12 and purchase a domain name for your new empowered digital life.
In the next chapter I will show you how quick and easy it is to install YunoHost and associate to your installation a domain name for admin purposes… and one for the first app you’re going to install. You only need ONE top level domain… you can create multiple subdomains for apps you are going to use or for the admin login.
If you’re confused by anything I wrote do not hesitate to reach out.
And dear sysadmins if you read through this and shuddered multiple times (especially in regards to security): I’m sorry! But extremely complex technical explanations never did anything for me. I was scared many times over by well-meaning people on the Fediverse who warned me of all the catastrophic things that could happen with lax security. So far so good with YunoHost. It’s important to show true newbies that this is something accessible to all, easy and safe.
Onwards and upwards!
Elena
P.S.: eternal gratitude to ilja who first mentioned YunoHost to me in November 2024. Your toot changed my life!
P.P.S.: I'm planning to publish the second step in this self-hosting for newbies guide next week
the screenshot of a toot by ilja (linked here) that mentions YunoHost to me for the first time ever
💓 Did you enjoy this post? Share it with a friend!
👫 Follow me on Mastodon. All my other links are available here: elena.social
📽️ If you'd like to support my work, you could buy or rent my documentary The Illusionists on the globalization of beauty:
The Illusionists
THE ILLUSIONISTS is an award-winning documentary about the globalization of beauty and the dark side of advertising.
💌 If you'd like to say hi, my contact information is here
✏️ If this post resonated with you, leave a comment!Elena Rossini | Contact Form
Contact Elena Rossini: use the contact form on this page to get in touch with Elena – interview requests, speaking gigs, freelance assignments...Elena Rossini
reshared this
Justin, veroandi_br, @reiver ⊼ (Charles) and Alexandra reshared this.