Nginx Installation on Ubuntu

SysAdmin Nginx Installation on Ubuntu

This is the second post on the road to self-host Nextcloud. At this point we have already choosed a provider and deployed a VPS and completed its initial setup.

Now, we're going to cover the installation of Nginx, the use of Let's Encrypt SSL certificates and the configuration of the web server to use HTTP Strict Transport Security (HSTS) and TLS 1.3.

Iā€™m currently using Ubuntu 18.04, but these instructions are equally valid for other Ubuntu versions.

Read the tutorial...

Global Climate Strike

Politics Global Climate Strike

Climate crisis is a fact. It's not something you choose to believe in or to deny. It's an emergency.

Because of human activity the world is changing at great pace and this time it's not for the better. We are no longer in time to avoid many of the drastic consequences of our aggressions to the planet, but we are still in time and have the responsibility to restrain them as much as we can.

The Global Climate Strike initiative is another attempt to raise awareness to the consequences of our actions, the policies of our governments and the imperative and urgent need for change.

For this initiative, the proposal is for millions of people around the world leave their homes and workplaces, on September 20th, to join the young climate strikers on the streets and demand an end to the era of fossil fuels.

You can use this map to find a climate strike near you, and if you're unable to strike on September 20th, here are some other ways you can join the movement.

Fight for our home šŸŒ There's no Planet B…

Ubuntu Server Initial Setup

SysAdmin Ubuntu Server Initial Setup

This is the first in a series of posts that will cover from the deployment of a VPS up to the installation of Nextcloud. These are the kind of posts I will write mostly for future memory, but if they will be useful to you, even better. I'm not reinventing the wheel here, these are just the result of the sum of tutorials and lessons I keep learning.

On this post I will cover the use of SSH to connect to a server, the creation of a new user with administrative privileges and the setup of a firewall.

I'm currently using Ubuntu 18.04, but these instructions are equally valid for other Ubuntu versions.

Read the tutorial...

This Blog's Source Code Is Now Public

Blog Web Development This Blog's Source Code Is Now Public

This blog was built following the JAMStack philosophy using Hugo, with its development being done at GitHub and now publicly available under the MIT license. It's deployed and hosted on Netlify.

Keep in mind that the theme used was tailor-made, and if you decide to use it, you will probably have a lot of work to do to adjust it to your needs.

I am making the source code public so it can be useful to you, but also so it can be audited. So please, if you find any typos, grammar or formatting errors, or any other issue that needs to be addressed, feel free to open a Pull Resquest. On posts you can use the link Edit (below the title) to fix them directly on GitHub.

Enjoy and contribute šŸ˜„

How I Ended Up With Vultr to Self Host Nextcloud

SysAdmin How I Ended Up With Vultr to Self Host Nextcloud

In the process of self-hosting Nextcloud the first step was to choose a VPS provider. It wasn't a straightforward choice and in the process I ended up experiencing, by this order, Hetzner, DigitalOcean and Vultr.

But, first of all, let me advise you that this isn't intended to be a factual analysis, supported by quantifiable and specific data. It is rather a subjective assessment based on my use case. Therefore, I believe that your experience with these providers could be completely different. If you are into more technical and detailed analyses you can go here and here, for example.

So my first choice was Hetzner. A company with a high reputation and a very inviting features/price ratio. A VPS with 1vCPU, 2GB RAM, 20GB Disk and 20TB Traffic for ā‚¬2.49 ($2.75) looks great. It seemed a logical choice. So I proceeded with the installation and configuration of Nextcloud and uploaded my files to the server. Everything was going well, until I started to browse through Nextcloud and tried to open some of my videos. The server crashed. I thought it was a one-time event, but I repeated the process always with the same outcome. According to Hetzner's console the culprit seemed to be the CPU. On idle it remained arround 30% and very often reached 100%. So I upgraded the VPS to 2vCPU, 4GB RAM and 40GB Disk for ā‚¬4.90 ($5.41) and it all started to work like a charm.

But then I kept wondering, does it take 2vCPU to run a personal Nextcloud? So I decided to give a try with the only provider I had ever worked with, DigitalOcean (DO). Of course I chose a droplet with 1vCPU, 1GB RAM and 25GB Disk ($5, ā‚¬4.54). The user experience was very similar to Hetzner's 2vCPU plan. Of course, CPU utilization was higher in DO (1vCPU vs 2vCPU), but with rare peaks and generally never exceeding 60%. One noticeable difference was the higher download/load speed in DO. Something I expected, because by the reviews I read they have a better network performance with higher download and upload speeds.

The same reviews pointed out that Vultr has a network performance on par with DO and a better overall performance. Besides that they have a datacenter in Paris (500km closer to me than Amsterdam) and free snapshots. So I decided to give it a spin. As in DO I deployed a server with 1vCPU, 1GB RAM and 25GB Disk ($5, ā‚¬4.54). The user experience was slightly better than with DO. The response time was shorter. As a result the pages opened more quickly and the download/load of files was also faster. A better overall experience. This, combined with the ability to create and store snapshots for free, made it easier for me to choose Vultr.

For now I see no advantage in using DO over Vultr. Hetzner can be back in play if I find myself in need of a little more disk space, or of the extra performance the 2vCPUs and 4GB RAM can offer.

Wrapping up

  • Hetzner 1vCPU, 2GB RAM, 20GB Disk at ā‚¬2.49 ($2.75): High CPU utilization and server crashed when loading videos, aparently because of CPU limitations.
  • Hetzner 2vCPU, 4GB RAM, 40GB Disk at ā‚¬4.90 ($5.41): Worked like a charm.
  • DigitalOcean 1vCPU, 1GB RAM, 25GB Disk at $5 (ā‚¬4.54): Similar experience as with Hetzner 2vCPU plan. Download/load of files was faster than Hetzner.
  • Vultr 1vCPU, 1GB RAM, 25GB Disk at $5 (ā‚¬4.54): Slightly better exeprience than DO. Faster response time and download/load of files. Free snapshots.