Setting up a production ready VPS is a lot easier than I thought.

preview_player
Показать описание

It's been a few years since I set up a VPS from scratch, and given how easy it is to now deploy on Serverless platforms, I always thought it would be challenging to replicate the same developer and user experience using a pure VPS.

As it turns out, I was wrong...

This video is sponsored by Hostinger. A big thank you to the team for providing me with a VPS instance to use throughout this video.

Links:-

Products I use:-

Join this channel to get access to perks:

00:00:00 Intro
00:01:10 Requirements
00:03:20 Sponsor
00:04:27 VPS Set up
00:06:02 Add User
00:06:48 Req 1: Domain Name
00:07:41 Tmux
00:08:21 Hardening SSH
00:10:31 Web ApP Running
00:12:16 Containerization
00:13:08 Install Docker
00:13:47 Docker Compose
00:14:45 Firewall
00:17:16 Reverse Proxy
00:19:47 Load Balancing
00:20:23 High Availability
00:21:13 TLS + HTTPS
00:23:33 HTTP Redirect
00:24:15 Automated Deployments
00:27:00 Rolling Release
00:27:58 Monitoring
Рекомендации по теме
Комментарии
Автор

15+ Years experience and I still learned something thank you.

matthewpulls
Автор

Great summary! I don't really understand why people are so afraid of using VPS for production. It's not really that different from cloud bs, and companies usually have a sre team anyway 😂

victor
Автор

Dude I have so much respect for you. I can tell you write a script and you put so much effort into those vids. Mad respect dude!

MightyMoud
Автор

this dude lowkey uploaded one of the best tutorial out there for a good vps production setup

fifty
Автор

Pleasantly surprised by how information dense and straight to the case this video is!

About 9:55, the term "security by obscurity" has a bad connotation rightfully so, but in this case changing the default sshd port I'd say is really important. OpenSSH is a battle-tested application, by changing the port of the server you're adding an extra layer of protection. Security by obscurity is a bad when it's the only factor in your defenses, but as an extra layer can be do wonders. Your logs will have less spam, your bandwidth will be less wasted and in the worst case scenario of a 0-day you can buy yourself some time.

On my previous job, I was so paranoid that I used a ssh bastion host with a non-default port while the target machine only accepted ssh traffic from within the network. This had the added bonus that the sshd exposure was minimal and reserved to only when I was working on the machine.

kRyStLGaMeR
Автор

This was a great video DOC. One pendantic note: the æ in traffic is a symbol in IPA (International Phonetic Alphabet) for exactly the sound the "a" in traffic makes. Maybe not ideal to make branding that only appeals to Apex-level language nerds like myself, but it works 🙂

AnthonyBullard
Автор

Nice video but you forgot backup/recover. It is the fundamental part of the cloud.

PanicAtProduction
Автор

I find that the difficulty in setting up a VPS properly does't lie in de setup itself, but knowing what things to setup in order to do it properly. This video is great in reminding you of the essentials to do so correctly and safely. Great video!

bvdlio
Автор

Another great point of VPS is that what you learn can be applied on multiple hosts. While learning how to deploy to the cloud will work only for one provider. VPS = Freedom!

Well done!

patriciodelboca
Автор

Few months ago I (FE dev turned into Full Stack) struggled to setup a VPS to deploy as a testing env for a LAMP application, and later a React+JAVA app. This video covered many subjects that cost me days.

Viniciuscordas
Автор

This is really great. Most of us have a vps with some app but I guess many have not containerized, load balanced, automated the deployment and implemented monitoring and observability. Thank you so much for your time on this.

josephnduati
Автор

If you're looking to deploy your own monitoring solution (probably best on a separate VPS), Uptime Kuma is a great FOSS project.

sergiorebelo-MO
Автор

Thank you a million times for this video. I was looking for a way to get started with self hosted deployments and this video is a goldmine for information for me.

TotalImmortl
Автор

What I really appreciated from this video was a breakdown of how you sort of put together requirements. It would be great to have a more in depth video covering an overview. Something like the following. No need to go into too much depth but maybe each part a quick demo and things to consider.


Road map
Defining requirements (I like to use the WRSPM model)
Assessing market value and profitability
Evaluating whether or not it's a good idea? Perhaps a business model canvas or something.
Wireframung UIs
Designing architecture
Setting up a site with a coming soon message perhaps a quick one with tailwind and astro. So you can copy paste ui elements straight in ans easily edit them.
Basic GDPR compliance and considerations (privacy policy, cookie notice) astro markdown file.
Maybe touch on analytics
Adding a sign up and newsletter to the site
Engaging with an audience.
Getting feedback through surveys
Basically everything you should do before you start coding.

zebcode
Автор

This video is amazing! i've been in the same boat as you feeling a bit "scared" of setting up a production VPS and this videos really makes it much more approachable. 100% gonna try this myself now. Thanks

p_o_z_e
Автор

As an SRE, I would also say amazing exlanation and walkthrough. Voice + mic also helps a lot. Great content keep it up

anastasiosdados
Автор

In the past i used to deploy my stuff pretty similiar.
Nowadays i do it using podman instead of docker, which also supports quadlets as container / network / pod definitions or if you like even kubernetes manifests and has podman auto-update included. That way you don't need to run a separate watchtower container, just add a label to containers that shuld be auto updated. Also it's daemonless and rootless which is pretty cool. You just have to allow non root users to bind to low ports sttarting at port 80 for http, so traefik can tcp bind there.

badtrapify
Автор

This is by far the best technical video I've watched since a few years. Kudos to your efforts and best wishes from India! 👏

DashboardTrader
Автор

Great stuff! I would love to see you do a deep dive like this into observability. I feel like there are a billion different Grafana tools and like you mentioned, adding the LGTM or ELK stack would increase the complexity of this setup significantly. But observability is so valuable, so I’m really interested in your approach!

nielskersic
Автор

Not using IaC I honestly don't consider as production ready, for which in this relatively simple case I'd probably pick Ansible. However this seems to be a pretty good step-by-step you can easily translate into an Ansible playbook.

My main remark is that because you skipped the database setup locally, I don't see any mention of backups - which is something a lot of people forget, and absolutely critical for a production ready setup.

koffiezet