Serverless might bankrupt you (and how to deploy to a VPS instead)
Summary
TLDRThis video script narrates the journey of deploying a Next.js application to a Virtual Private Server (VPS) using Hostinger, a service that offers a 10% discount with the code 'webdev Cody'. The script covers the entire process from selecting a VPS plan to setting up Coolify, a tool for managing Docker deployments. It also emphasizes the importance of using a VPS to avoid unexpected high costs associated with serverless environments and provides a step-by-step guide to ensure a secure and efficient deployment, including using Cloudflare for DNS management and security features like rate limiting and automatic DOS protection.
Takeaways
- 😨 Serverless deployment can lead to unexpected high costs if not managed properly, as seen with the $96,000 bill example.
- 🔁 The risk of creating infinite loops in serverless architectures can quickly accumulate costs, as one developer experienced with a $1,000 bill in just a few hours.
- 💸 The speaker's personal experience with a serverless environment resulted in a $1,500 bill, despite believing the setup was correct.
- 📈 There's a higher learning curve associated with deploying to a serverless environment to avoid financial impact.
- 🛑 The speaker recommends deploying side projects to a VPS for better cost control and reliability.
- 🌐 The tutorial covers deploying a Next.js application to a VPS using Hostinger, a service provider sponsoring the video.
- 🔧 Coolify, a free tool, is introduced for managing and deploying applications to a VPS, reducing the need for manual setup.
- 💻 The process includes creating a VPS, selecting an operating system, and setting up SSH access for secure connections.
- 🔑 Coolify uses Docker for hosting applications and provides a dashboard for application management, including logs and service restarts.
- 🔄 The importance of fixing local build errors before deploying is highlighted to prevent deployment failures.
- 🔒 Security measures like using HTTPS, Cloudflare for DNS management, and setting up proper access controls are discussed to protect the application.
Q & A
What is the main concern expressed in the video about serverless deployment?
-The main concern is the potential for unexpected high costs due to issues like viral apps, infinite loops, or misconfigurations, which can lead to large bills that the developer is responsible for.
What is the recommended alternative to serverless deployment mentioned in the video?
-The video recommends deploying applications to a Virtual Private Server (VPS) as an alternative to serverless deployment.
Which website is used in the video for deploying the Next.js application to a VPS?
-Hostinger is used for deploying the Next.js application to a VPS in the video.
What discount code is provided for Hostinger in the video?
-The discount code provided for Hostinger in the video is 'webd Cody'.
What is the purpose of the tool 'coolify' used in the video?
-Coolify is used to manage and deploy applications to a VPS, providing a more managed system and avoiding the need for manual setup.
What is the significance of using Docker in coolify as shown in the video?
-Docker is used in coolify to create and manage containers for the application, making it easier to deploy and run the Next.js application on the VPS.
What is the role of Cloudflare in the deployment process as described in the video?
-Cloudflare is used for DNS management, providing SSL certificates, and offering additional security features like DDoS protection and rate limiting.
What is the importance of setting up environment variables in the deployment process?
-Setting up environment variables is crucial for the application to connect to databases and other services securely and correctly during the deployment process.
Why is it recommended to test the application locally before deploying?
-Testing the application locally helps to catch and fix errors, such as TypeScript errors, before deploying, which can prevent deployment failures.
What is the significance of using HTTPS instead of HTTP for the deployed application?
-Using HTTPS ensures secure communication between the client and server, protecting the data from being intercepted and is a standard practice for production-ready deployments.
How does the video guide the user to fix deployment issues related to TypeScript errors?
-The video suggests building the application locally to identify TypeScript errors, fixing them in the code, committing the changes, and then redeploying the application.
Outlines
This section is available to paid users only. Please upgrade to access this part.
Upgrade NowMindmap
This section is available to paid users only. Please upgrade to access this part.
Upgrade NowKeywords
This section is available to paid users only. Please upgrade to access this part.
Upgrade NowHighlights
This section is available to paid users only. Please upgrade to access this part.
Upgrade NowTranscripts
This section is available to paid users only. Please upgrade to access this part.
Upgrade NowBrowse More Related Video
Setting up a production ready VPS is a lot easier than I thought.
Purchasing a Domain + Hosting TextUtils on a VPS | Complete React Course in Hindi #18
Self Host 101 - Set up and Secure Your Own Server
آموزش ساخت سرور وی پی ان شخصی و فروشی🔥روش کانفیگ وی تو ری فیلترشکن | V2ray VPN
How To Deploy Serverless SAM Using Code Pipeline (5 Min) | Using AWS Code Build & Code Commit
Serverless API with Cloudflare Workers (Hono, D1 & Drizzle ORM)
5.0 / 5 (0 votes)