The cloud is over-engineered and overpriced (no music)
Вставка
- Опубліковано 24 кві 2024
- I tried the music and the feedback is clear enough that I think it's worth uploading a version of this with no music. I'm still learning!
I'm sorry :( I really liked the riff I wrote for the intro since it has a time signature of 7/4 but I got carried away a bit...
Let's spin up a server a simpler way.I'm experimenting with some background music, let me know what you think.In this video I will be showing how to use fundamentals to spin up a server, replacing cloud providers like AWS, Google Cloud Provider and Microsoft Azure with Linux, Docker and Git. For many applications, the tools we use are grossly over-engineered. I'm trying to force myself to rethink my approach and use simpler tools. Hosting this server is part of that. - Наука та технологія
Nice one , music was a little loud
music is haram
😂@@user-zg2bx4oz2p
Music is haram
Yes music is HARAM
Can verify music is indeed haram
Man is a legend for admitting his mistake with that sshtty music and hot fixing it right away hahaha
@@scaffus no idea. Regardless of my taste in music, the music was stealing the show from what I would describe as a very important message that lots of engineers have to hear way more often.
I’m going to steal your `sshtty` bit 👌
nice😂 ssh tty now has one more meaning
@@knowledgedose1956 I was messing with my ssh keys at the time of writing the op so it came naturally to me. Glad u noticed. Have a nice day
hot fixing? no one talks like that. learn to be human.
Thank you for having a version without music
😭😂🤣. Bro paid you for saving his ears
When are you donating us poor souls?
I am simple person, I see self host, I like.
This is a genuinely a really good self-hosting walkthrough, and you're right about the cloud's shortcomings. I'll be dead before I carry water for aws/gcp/etc, but i think it must be said that there's a pretty large gap between what you're showing and the sort of commercial-scale operations that the cloud is meant to be a practical replacement for (one where the cost of a devops department would run into six figures)
Exactly. I’m really looking for a way to reduce our company’s AWS bill but this just wont cut it
Well, if you have 1 devops then your cost is already six figures. And cloud doesn't fix it, as most developers are too bad with cloud stuff so you'll still need to hire someone with an expertise or suffer the consequences.
@@cloudboogie"most devs are bad with cloud stuff" hmmm... What? I see people developing/certifying themselves on it every single day man, and taking into account how many jobs there are available on that field... Just makes no sense unless you're thinking about the 40yo+ devs that have a beard, yellow glasses, "I'm on arch btw" and still think WSL is a desecration of the Linux Kernel or something.
@@Jossarianz move to another provider - running your containers under VMs i.e. Linode, Equinix Metal, Digital Ocean, Vultur
for real.
Have any of you been through a process-related audit (e.g. SOX, NIST, PCI, HIPAA)?
Every single process in your enterprise will be reviewed, with varying degrees of thoroughness, depending on your industry.
Your "it runs faster if I host it from the PC under my desk!" attitudes represent real risk to the company you work for. _Everything_ has to be logged, everything has to be auditable, and (at this point) nothing does that as well as public cloud.
Love the VC -> Bezos pipeline. One of the all time classics
if this man disappears, we all know the reason
The music mafia got to him
He's an aussie, Bezos has no power over him.
@@AUniqueHandleName444 I don't think the music is from Amazon tho
Did he get trapped inside one of his own Docker containers?
The AWS death squadron is coming for you
As a software engineer who has worked with bare metals, hybrid infrastructure and Cloud I tell you cheap is a very relative concept. You can deploy anything on your cheap notebook, but maintaining it will be a pain. Backup, upgrades and disk replacement is just something you have to consistently consider when you host these things. I used to work in a company where the infrastructure was hybrid, we hosted our stuff through VMware and bare metal, and it was a pain. Setting up distaste recovery plans and monitoring was just annoying. No one wanted to do it. And with the cloud you just trust it will work. It’s truly on another level.
Exactly. Getting something to ”work“ and maintaining something are completely different things.
Everything is In your word trust.
You trust until one day you notice issues in your data, then you open a ticket, the answer is yes we lost your data. You field a claim, the answer is in the contract your responsible for your data saving... Then you wonder why the cloud at the first point 😂
Most companies grossly underestimate the costs
Also.. imagine trusting aws
@@user-vb9vc1es3o me when backups do not exist
@@user-vb9vc1es3o "notice issues in your data". A competent software engineer would be able to discover the origin of these data issues and address them appropriately. The scenario you laid out assumes that the data/software engineer is not qualified for the role and needs to be let go.
Things I learned:
a) How to self host
b) This video used to have annoyingly loud music
Well, you are still going to use the cloud, but it will be Linode or Digital Ocean, which are way cheaper than AWS.
music was REALLY loud for a tech video. thanks!
Better without music
This version is actually very good! Completely watchable, professional, and engaging, compared to the version with the loud music.
Over there, I constantly felt like I want to turn the volume down, but I would also not be able to hear your voice
I just watched your previous video and now i am hooked to your channel. Nice content.
Bro really. Make a tutorial replicate this one using Kamal I can help you with the configuration
Currently in a startup: moved everything to linode from AWS, deployed on kubernetes using all open source solutions.
Total operational cost for a horizontally scaled SaaS app is $50 per week.for a total of $2600 per year.
what was it like before?
That's still a lot. Can you rewrite it into an efficient language with efficient algorithms to where a single node is sufficient?
@@vcoolif a startup is able to logically expense the cost of a full rewrite to save $1k/year they either don't have a product or won't have any staff soon.
@@vcoolrewriting a product can take 100’s of 1000’s of $, and can potentially fail.
I'm also looking at something like Hetzner Cloud with k3s.
I kind of still want to outsource DB to something like Neon or CoachroachDB, but cloud compute is too expensive, especially if your app is mostly I/O bound.
Most of our line of business apps are literally sitting at sub 1% CPU on the smallest AWS Fargate instances
I am verry impressed by the details and all in one description you are delivering here. Thank you verry much!
You earned my trust in less than 15 minutes. Subscribed!
Been wanting to self-host and this was a great start. Awesome video, man!
I watched the first video and there were complaints about music. Got back on and you had re uploaded and fixed version. That was fast man. I just subbed this video was great.
Good for you to reupload this. Great video, totally agree (as a cloud engineer myself!!)
Agree with it all. Very nice to see a practical example on how to do it and love your explanation and reasoning
Nice video! I built my second startup using FreeBSD jails, Git, and Gitlab CI/CD. It's definitely possible to avoid cloud complexity until you really need it. Love your approach here, keeps things nice and simple but leaves options for later on the table. Bravo.
You had me at "I refuse to use nano more than once per computer" 👏
Watched the previous video, and this is a good change! now this is a great resource of trying to self host without using complicated software.
So caught me off guard with the nixOS spin. It was a pleasant surprise.
Without a too loud music. The video is still good !
Since you always show things on screen while never stop of talking. There is no blank and that’s perfect.
That’s nice of you to have made this modification and that show your dedication in your channel.
Anyway nice job. I didn’t subscribe in the first video but it’s now done ^^
Incedibly well done video. Really covered a lot of topics in a short time. I think all the advice was great! Even for someone who knows and uses most of these tools already, it is great to see how others are setting things up.
Just one critical thing you missed (in my opinion) is backups. I very much agree with you that I am not so worried about a bit of down time. Downtime is no such a big deal. But data loss is a big deal. So maybe some cron jobs that backup some data to S3 for example? Sure you are using cloud in that case but in a very minimal way usually very low cost to use S3. Doing this really adds a lot of value and peace of mind at minimal cost.
And one last thing. It would be great if you included a git repo with the files you created in the video.
I love how simple and straightforward all of this is. And I find it really interesting the choice for NIXOS for just it's config file nature
Thats fantastic! Thanks for the knowledge. I'll be using this on my project
So my personal philosophy:
- if project doesn’t demand absurd SLA or you just having fun, use home hosting
- if initial or small deployment for high reliability, cloud makes sense. Cost of reliable internet and power usually exceeds cost of cloud (eg lambda + RDS instance)
- the tipping point of dedicated local hosting is when the cost of backup power, real estate, and high SLA fiber can be amortized against cloud bill
- cloud only makes sense for large loads in narrow circumstances. The overhead price for scalability is often not less than the cost of maintaining excess infra. The main variable here is time/consistency.
Also worth differentiating “cloud” versus like private server hosting. I think that the typical shared data center renting rack space or even single bare metal server model looks more like home hosting with defrayed cost of reliable power and fiber.
Personally being able to reconfigure my home network rack without taking down my public website is nice. Also if you try to do email from Comcast consumer IP space you will be permanently spammed. You need reverse DNS etc.
Companies like AWS, Google, and Azure price on a curve. Its cheaper in the begining but once you use the handy dandy "scalability" you are effectively trapped in an overpriced money pit that you can't escape from
Very smart things have been said here. Will definitely be taking a lot of these ideas into account when deploying my next project.
This is really great! I'm starting to learn deployment techs and this really helped me make sense out of things.
The only think I look for a provider today is for managed databases, I still don't want to deal with the pain of managing database servers (snapshots, backups, updates, security, patches, etc...). I don't need that much to run stateless applications, just spawning a new docker container and works like a charm, but the data store is still a pain to manage myself.
Okay, so we run RDS with backups. Cool.
Where do you want to host your compute? Your compute needs to be hosted close to the database or else the database hops are going to end up costing you a lot of latency, not to mention the traffic costs at the edge for the connection into AWS coming from public internet. (additionally there's security concerns here now because your database is exposed publicly rather than living in the confines of an AWS VPC. Okay, the security issue here can be solved with properly configured security groups to limit connections in, but the requirements are stacking up here, and this is an easy step to miss for a team that's not savvy on security)
Then there's the question of routing into your compute. Amazon makes this insanely easy with ELBs (Elastic Load Balancer). With your home internet provider, you'll either have a dynamic IP, or be straight up natted and you'll have a very difficult time routing to your system. The dynamic IP can be worked around with tools that will monitor your public IP address and update DNS records accordingly, but this is another piece of infrastructure to manage, and there's no way to do it with zero downtime. To get reliable static IPs you're talking about creating a datacenter, and a datacenter specifically close to AWS datacenters where they've already bought up the best land in the area for that purpose. It's also a giant upfront cost in terms of money and time for a startup that needs to be quick to market.
Self hosting is a LOT more than running a couple of containers on a machine.
@@patrickrobertshaw7020I would just set up a vpn to my database, something like zerotier, it’s super fast and doesn’t need to know your ip address. You don’t need to open up any ports on your firewall for it to work.
For serving you app you can use something like Cloudfront tunnels. Or just buy a cheap 1-5$ vps and set your nginx on it. Although I prefer Traefik.
@@patrickrobertshaw7020
"or be straight up natted"
" already bought up the best land in the area for that purpose."
You can write comments normally lol
I really enjoyed finding this channel, I hope you keep up posting
This is awesome. I love the intro to this. Ill be coming back to try this tutorial for sure.
We actually ended up with our startup self hosting, however our AWS costs were only about 1k a month when we switched. Our self hosting is essentially free.
nice comeback dude, i saw how fast you acted on feedback, big ups!
Using 10+ different tools means 10+ more likely points of failure and 10+ different companies/discords to ask for help and 10+ tools you need to monitor for mandatory updates.
For 10+ less money bruh
and 10+ more skills and know-how which you usually dont have at the beggining since you are newbie :)
You still have to configure all these tools in AWS, and if you doing it properly, using IaC.
The best middle ground IMO is something like Hetzner Cloud with k3s, and still outsourcing DB
@@kabal911 you are reading my mind thats the perfect balanced solution
@@kabal911 kubernetes + LBs on hetzner and DBs on aws
Thank you for upload without music
And what a great video you make thanks for this too
Your passion is contagious, I know what I will do this summer.
The thing with AWS is you don’t have long term commitments and you can start and stop services on demand. BUT of course if you only need servers, there are also classic hosting providers that offer those on the same dynamic way as AWS for much less. Nobody says you can’t do this with normal servers. But you need more people, that is inevitable.
Which is paradoxical since it is only by paying upfront for the resources you plan to use that you can get the best pricing, the true spirit of the whole thing what was pitched years ago when the whole thing started.
@@TheS0meguy yes that's true and it is annoying. We offer a SaaS solution on AWS and we are working hard on cost optimization even though we have long term customers. If you can use spot instances then maybe you can have an advantage but for us it is not feasible. But we do benefit in that way that we have batch workloads where you would have to buy a lot of extra capacity if you used classic servers.
I've worked at a company that had their own servers sitting in Rackspace in a Datacenter nearby, the datacenter bill was laughbale compared to what we would've spent in the cloud, and surprisingly, 5 year old servers don't perform too bad. We were running on OpenShift and ArgoCD, including some very tight network firewall rules, meaning we could only log in to the control planes of those nodes from a Remote Desktop within the DC. It was honestly quite intruiging.
@@AstralJaeger if that fits your workload it is the best option. Server rental is always cheaper than cloud. But if you have a workload where you need like 5 servers for 4 hours and 1 for the rest of the day it can be problematic. On the other hand if you need fast disk I/O, servers are nearly always better as on AWS it is either slow AF or costs you an arm and a leg.
@@mudi2000a Oh I fully agree, it was a long term hosted SaaS Product that was hosted in 3 datacenters over 3 european countries. It was honestly impressive how far you can get when your are unwilling to spend money.
But I still think you can host on AWS and Azure without getting fully locked in, but then it would be cheaper to just rent a dedicated box on Hetzner for 50$/mo
This video feels like an affirmation that I haven't gone crazy.
Literally every professor this year in my faculty that had computer-related class (not programming, just the theory of computer architecture, professors that taught programming and oop were actually great) was telling us to use cloud, even when we were doing RAID.
It really did just sweep the industry by storm and people haven’t looked back at all 😢
@@Macheako Self hosting can be a major pain or outright impossible in some situations. You have to have a stable IP and you're ISP has to be ok with you hosting. If neither are true, then you simply can't self host. You could move, but that's quite the major life change just to avoid using someone else's computer.
@@Beakerbite That's what colocation datacenters are for. en.wikipedia.org/wiki/Colocation_centre
@@Beakerbite Or maybe its about time to force ISPs to give all customers static IP leases without expiration on demand at no charge. I don't believe that there is any reasonable explanation that can excuse this failure.
@@Moe_Posting_Chad Won't work unless we all switch to ipv6
In my first job, I was in a small startup where we had a 60 year old linux neckbeard as IT. He built an incredibly robust infrastructure out of free open source software and old cheap hardware.
Very good video! It's good to see someone helping people move toward Free solutions rather than being reliant on megacorps
Very wise. We’ve traded a strong magic aversion to layers of magic recently. Too much magic equals too little understanding.
simple != easy. Such a gold statement. Instant DeepCopy, right there :D
Thank you my brother. You're goated. Expect more videos like this(also no music).
The way you showcased how things would actually work if self hosted is really impressive. I, for the longest time, wanted to self host my website, blogs, packages, etc. But I couldn't figure out how to do it. This just gives me a reason to do it. Thanks.
Look, I was going to make a tech joke about the video and all that, but the more I listened the more the video LITERALLY FUC.. ING showed what I do for a living. Including same decisions, mindset and more. Obviously you have more than 10 years of IT experience and have gone through the WTF moments as I have.
This video touched so many points in so little time. So congratulations and I happily subscribed to the channel.
Also the joke was "This video is for cases when you have less than 15 minutes for the cloud and server interview and no time to learn... But you need to sound knowledgeable".
The more I learn the more I realize the solution is to bullshit other people at work. No matter what industry or what role, just bullshit a sense of competence and results. I remember one company, I lied about literally everything on the application, in the interview, and even when I was "working." The wrong people were pleased and the right people were mad but powerless to inflict on me personally any consequence.
The whole world works like this. Everyone should just start doing it as much as possible. Grind the system to a halt.
"the video LITERALLY FUC.. ING showed what I do for a living."
Why do people write like this?
"I sleep for 30 seconds since it's easier than doing a health check" best life advice here
Great video Tom, thank you very much for putting it together!
This video is amazing, goes through so much!
Recently I have found "docker compose up --scale" removes the latest created container. Finally I have found the way to remove the old container. Thanks.
Leah ?
This is a great solution if you are young or unemployed, but when you are a business this is exactly what you want to avoid. This solution is very costly because you need to pay the wages for at least two employees who have such a deep understanding of those tools. Then you constantly need to monitor if this home grown solution still works and have to do software updates yourself all the time. While with AWS you don't need to spend money on those sysadmin guys and you have the confidence that your solution is tried and tested and will work all the time while not having to care about software updates at all.
Software updates for the most part are supposed to be automated or otherwise skippable.
@@vcool How would you automate software updates? You need to check if the application is still running after an update and be ready to revert the update if it fails. Plus you also need to check your homegrown solution if it is still compatible with the newer versions of the software it relies on. There's a reason why business spend so much on Amazon, because they would spend much more if they would do it themselves.
@@youtubevideos415tools like Jenkins are great for testing before deployment. All the automation software has processes to check for updates at build which generally happens at use, so the flow could be fully automated.
While I believe Amazon is obviously more stable, you'll still need experts to understand, setup, monitor and grow. I guess for me I'd rather have the autonomy to fix things to work for me, and not essentially allow my company to be owned and operated by Amazon. Also AWS really just makes hardware easily accessible. Everything going on in the background needs someone to get paid to monitor it.
thank you, finally a voice of reason. also, what happens if the power goes out at your office? or your internet provider goes down? or the CTO spills coffee on the server? or the disk fails? are your users going to wait around while you drive to Best Buy? like I get the hate for the AWS alphabet soup services, but there's a middle ground between that and a box under your desk like it's the 90s. look at Digital Ocean, Hetzner Cloud, Linode, etc.
The cloud isn't gonna maintain itself either. You got shared responsibility. Or you end up paying another MSP for doing that.
Absolutely incredible video. Actually useful information delivered well. Keep it up 👍
Thanks a lot for explaining the rabbit holes to us :)
If you are a tinker, then do this, if you are a business, who wants to focus on business and not server maintenance, then use the cloud
Agreed. You probably already know but ECS isn't just docker like mentioned in the vid, it'll automate provisioning servers to scale to your traffic in a rubber-banding effect (hence elastic). When mentioned in the video that it's 'preferred to have the site crash and then provision more servers' makes me cringe because while that's fine for a random person's website that can be detrimental to a business whose infrastructure failed just as they may have finally gained the traffic they worked hard to get, and once user's see hiccups in your service then that's a lasting impression that you aren't trustworthy. There's ways of using cloud without being locked down to a provider.
@@coreycollins8554 Yeah it's never preferable to have the site crash, this guy has almost certainly never worked in a proper tech company if he recommends this. The bare minimum for an app with business customers is multi AZ and 4 nines - they likely wouldn't sign a contract for an app that does less. Docker swarm isn't a solution as stated in the video, since a powercut still kills all of your machines at once. No replication of customer data is a liability issue. No node autoscaling, and it's not really feasible to automate that at home. No CDN, so the frontend will load horrifically slow from a different country.
There's many reasons we use PaaS.
"I've never seen anyone actually use multi regions on the cloud for their services" ok yeah that's the nail in the coffin for this video
@@coreycollins8554 In this context it, ECS is a term of abstraction. Docker is just an core component of that abstraction. SLA is up to client to choose. If you implement "ECS" in house you pick and choose the requirements. That includes hardware(owned/rented) and location(s).
And get shoved down the throat a 10k bill at the end of the month because you have no idea what you’re doing
Subbed after no music upload
Likewise lol
Same!
This video is great, regardless of migrating to the cloud or not. I believe that knowing these steps is important to anyone deploying applications in cloud
this inspires me to reevaluate my tech choices. i'm using a managed openshift right now.
As someone who has self-hosted many websites, you seem to be missing the entire point of why people prefer using cloud servers for their startups. It's all about scaling applications on a need basis to handle sudden, dramatic increases in traffic, which all startups expect as a part of their projected exponential growth strategy. Using local machines is cheaper, yes, but that is when the traffic and scale is static; even then there is a lot of infrastructure that goes into running a data center.
Using a hybrid Cloud Model with Focus on bare-metal 😉
Great video. Thought it was going to be a talking point on cloud services. Was pleasantly surprised to discover what this video actually was.
I like the workflow and your video taught a few tips and tricks that I hadn't previously known.
P.S. You had me at "I refuse to use nano more than once per device"
thank you! been searching ages for this topic. it's been my age old interest to do devops without getting vendor locked in as a fullstack developer.
wonderful video, sir! exactly what i was looking for. even as i'm not really a programmer, i do need to make my own tools from time to time and it always annoyed me to no end that whenever i'd try to get an actual professional to build a solution, they could never understand that i don't want it on a cloud, and that i also want to be able to control and change it myself, as i can't just sit around and wait for someone else to answer me when i have an error or something. so i would always actually end up crudely doing it myself, which took a bit longer, but it was at least working the way i needed it to. you explained this point very well at the end, most truly don't need such complicated tools and more often they take away too much in turn of some apparent advantages that few are actually asking for.
I love your content! I work at a self hosting organization. We buy used servers and run kubernetes. We own the building. We use 2 ISP and use cloudflare to load balance but looking to get into BGP when we move buildings soon.
Your setup scales well. I can attest to that. Simple, not easy I mean.
We use Amazon for S3 storage though.
I would tweak your video by jumping straight from docker run bypassing compose and swarm straight to kubernetes. Kubernetes is great, if you don’t think so let me talk you into it.
If you call me a hypocrite for using s3… try beating about $200 last month bill for s3 but $208k of revenue. Yeah I’m not spending one minute of my day to optimize that.
But the fun part is on premise I don’t have to optimize anything, ever. 32 gigs of ram per tenant ? Database server + redis + single tenant app per customer? Sure. Done. Easy.
AWS is like hundreds of dollars per month for a couple cores and a couple gigs
Would you suggest K8 for a single node server? I 'm deploying customer projects on VMs and trying to dockerize the process. I 've never touched K8 or Swarm, and just stick to compose, but I 'm not confident it's a stable solution.
Just finished IBM’s Full Stack Dev certification, gotta say that is as far down the cloud engineering rabbit hole as I ever want to be. Microservices in particular struck me as something only middle management would ever begin to think is a good idea.
Edit: I think I meant to say serverless/FaaS, not so much Microservices
Everyone I've ever seen advocating for microservices has been an engineer. Engineers like it because they can start something new all the time without having to maintain ugly code. Don't like service x, let's re-write it as service y. It doesn't make sense from an engineering perspective but spinning up new services sure is fun.
Microservices are good in the correct context, but that is usually very specific and not applicable once it needs to know too much data. We use micro services for our API interfaces/bridges because they don't need to know anything. Allows us to scale them really fast
Microservices can be abused but when used correctly can be very effective. Each service is supposed to act as though other services may be down and can operate somewhat independently, preventing the classic "1 dev added a new feature that's bugged and now the whole website/system is offline". Services can also be in different tech stacks to fit their needs - some are ML workers and need pytorch, basic backend services are made in Go, performant critical services are made in Rust, etc. Large scale projects can be broken into smaller domains where each subteam or dev can work on their own API / spec without needing to understand the complexities of everything, which also helps with Agile teams who are focused on continuous deliverables especially as the product needs change over time. And with services deployed as pods we can automate horizontally scaling up a service if the traffic is hitting hard at that particular moment while keeping the other services scaled down to their own needs - rather than the monolith as a whole scaling up which may be unnecessary. I'm not a middle manager btw lol.
@@coreycollins8554 But if you run everything on the same computer, you don't have so many things that can go wrong. Many more ways for a network call to fail vs a library function call. Modern computers are so crazy fast, you can get a lot of users on the same machine without putting a bunch of services in the middle. APIs have existed long before people put HTTP calls between them to slow them down. Distributed computed is needed sometimes for some problems, but way less often than what people think.
Very nice and I agree with everything you said about the cloud. And this is coming from someone who is actually dealing cloud stuffs for Fortune 500s. Thanks for posting and would like to see more like this.
Super enjoyable. Loved it sans music, made it easier to follow what you were saying and your arguments
I think the assumption of this video is incorrect. The cloud is obviously not for you or your scale. The cloud is for SCALE and RELIABILITY not simplicity. Although it is significantly simpler than running your own tools
“Although it is significantly simpler than running your own tools.”
Wut.
When you need certifications to do something, then it isn't simple.
What this video went through is the absolute rock bottom of competence, because the level of understanding required is low, and you can get by mainly following instructions. You can't do this in a day, you shouldn't work as a software engineer.
Your example, is for small or pet project. Its not suitable for big projects. And who is using plain docker in project?
That’s exactly his point. This thinking that you shouldn’t use Docker alone…
Thanks for this video, it changed the way how I view world.
Phenomenal video i didnt see the one with music but you outline a lot of great points with the tendency to overengineer
Where did you get that $1,160,000 figure from?
I'm curious too
From my experience having worked at a startup, it is absolutely in the ballpark.
You're comparing 1 mil of cloud spending by a startup to an old laptop running a docker container in someone's apartment. Is this a joke?
Also, depending on the website (static vs dynamic), It might be cheaper to just run it in the cloud. Statically host it in S3 + use cloudfront for your CDN, and use lambda for API routes. Use a serverless DB like dynamo or aurora. Depending on your traffic, the cloud soultion could be cheaper.
Also, it would come out of the box with: Unified metrics, logging, and alarms. 99.99+ SLAs on availability and persistence. IaC, no infra management, near infinite scalability, audit logs, ops console, etc...
Perhaps people reach for cloud solutions too often -- but the self hosted docker container is not convincing me of anything.
*Thank you for uploading without music. I really appreciate that.* 👍👍
Thanks for such a great video! I have one doubt, does ngix map dynamic IP? As per my knowledge, personal pcs and routers have dynamic IP.
Same question here, what does the dns forward to?
How did you manage your static ip and connected it to the DNS
Can't tell if this is a troll or not 🤔
Totes. Just pay your way into submission. Not worth thinking your way to success.
I will tell you this...this is a great video...and looking at your past videos, I feel this video is the most useful one. If possible please go in detail of the setup of each components you discussed, I believe each topic can be separate video of its own. But anyhow Great work!!!!!!!
YESSS... I'm so happy I learned the LAMP stack doing everything by scratch before the insanity that is webdev now became what it is. I know how to do everything manually.
nice, music was a headache
Much better without the music.
well I arrived after the loud music, so I just had a great video watched; nice explanation, congrats 👏🏾🔥
now, i know i don't have a spend a single dime on cloud services for my own projects. Thank you so much!!
It's a bit of a hard claim that cloud is over engineerd. Too bad that the majority of the video was around deploying a simple webserver. It would better proof your point if you would be able to apply, integrate, secure and scale multiple different applications. Then add data processing and analytics on top and ensure that the entire stack is fully observable.
My point is: cloud is very usefull, but merely overkill if you only have a very simple compute demand. Other than that, the additional services are worth their money very fast.
He forgot to mention that most internet service providers don’t allow home users to host websites, so now you have to pay for hosting. If you do that, who wants to mess with setting this up and then maintain the OS, patch it, provide SLAs etc. for commercial use, it’s not practical.
Mine allows it
Haven't run into one that blocks that in the last 10+ years
It's often more technical than an allow/disallow policy to the ISP. If your ISP implements a CGNAT network, it's not feasible to host because you're NATTED in some private subnet so incoming packets wouldn't know where to go. Luckily many ISPs are adopting ipv6, which can provide a real IP for every device in your network, so you can get something working. I've also worked around this with a remote hosted reverse proxy tunnel, but that isn't the best long term
@@dv_xl Yeah, the fact that routing is left as an exercise to the reader here, and he spent literally 10 seconds talking about pointing DNS to your website makes this an absolutely insane video. It's just a docker compose demo, which anyone thinking about self hosting is already well versed in
@@patrickrobertshaw7020What is there to say about it? "If you're lucky and not behind a CGNAT by your ISP you can directly point the DNS to your IP, otherwise you'll need to pay for or setup a reverse proxy with a public IPv4"?
This is soo good! I actually learnt the hard-way not to use the big vendors because I had 3 cosmosDB containers running slightly over free tier and it cost £150 for a month, absolute robbery. Now I use a $4/mo vps and it barely goes over 10% usage.
what music... man this was a breath of common sense after a week of aws test prep... i understood it all intuitively (except i had not used cuddy - just nginx) with like zero weirdness plus i liked the penguins. And i have used aws for 4 years professionally and ... yes i have never scaled more than a server at a time and... it used to be cheap. subscribed!
AWS was built for enterprise in mind and then they just take popular open source libraries, create a thin wrapper around it and charge people. I'm surprised libraries allow them to do this tbh
redis isn't letting them do it any more. I wouldn't doubt if more oss start heading this way.
So if your power goes off or internet goes out your web app goes offline
Realistically, how often does your power go out? If the answer is even somewhat often, you might want to find a new office space/landlord.
Thats what UPS and redundant internet lines are for. If it happens consistently its time to get a new ISP/Landlord/Power provider. This is a non-issue as if the internet and power goes out, so does your access to the cloud so your employees still cant work
wow this video is even better than the last one!!
jokes aside, really good video 👍
thank you so much. top notch content. Keep posting new videos.
As a senior engineer working in AWS, I've been telling people that there is literally no way in hell that paying for AWS is cheaper than running your own data center. With AWS, you have to pay for the data center, and all the maintenance, and Amazon has to make a profit. During a major migration to AWS internally, we calculated that the cost of AWS compared to Amazon's internal data center was 3x. We even got the internal discount, and it is still far cheaper to run our own.
if you factor in loss of engineering time to build and maintain owned data center, would it still cost less?
@@mananshah3248 Yes absolutely. Managing AWS infrastructure is just as expensive as managing your own data center, always. There's a reason why some of the internal Amazon teams are moving off of AWS into internal "self managed" data centers. (note: all data centers are on "aws" because we're all using the same data centers, "aws" is just a tool/ui overlay)
@@mananshah3248have you factored in engineering time for thikering with API, control panels, sizing, aux services and integrations on AWS?
Just to give an update on this. We purposely change names of tools and mechanisms from industry standard (for example security groups are just firewalls) just to hide the underlying mechanisms because we don't want customers to realize that AWS is literally just a UI wrapper over open source products for the most part.
If you're not a real engineer, this is not an issue. But once your business starts to become larger and hit scaling capacity considerations, your engineers will never learn what is the actual bottleneck because our documentation is purposely written just to onboard customers and has very few details about how it actually is working.
This has a lot of important issues because your architects will never be able to fully architect an efficient system because they will not know the actual issues until they happen. (this is why we are now offering ProServ to "help" people architect a more effective infra...but we charge a lot for that)
So on the cost of management side, I would strongly argue that managing your own infrastructure is by far and away easier than managing cloud infrastructure. It is also by far more secure because you don't even need to open your internal data centers externally; whereas AWS is always available to the public, so you have to manage your own private networks carefully.
In fact, a great way to evaluate your engineer's depth of actual software engineering knowledge is how scared they are to build an internal infrastructure as compared to cloud infrastructure. A good engineer should have more confidence when given more self-managed controls. A bad engineers would argue all these nonsense about not knowing how to do things yourself and cloud managed services is a great advantage.
Sounds like a skill issue if you’re spending that much on cloud services.
Nop. Majority of large companies are doing this.
@@ahp-6785Then those large companies have skill issues 🙃
Loved this.. I ended up getting a single colo server with a ton of ram and disk space.. I can do more with it then I ever could with ec2 because of disk/ram/money concerns(try running k8s on ec2 for cheap...) .. Now if I ever need scalable, I have this server handle base load, and can farm out to the cloud only on peak..
Very good video and I love it and I 100% want to get better at doing things on prem but videos like this also worry me let alone the cost of cloud I recently became a cloud engineer for a business for helping managing and deploying and securing resources and applications on the Azure... you're right about over engineered, configuration pages are long and non-sensical, everything is buired upon menu after menu to get a simple config going, but without that I won't be in a job oop -
This video is bad advice for the real world. The cost of self hosting for a business is insane, between hardware, software, and paying people to manage it, it's a huge cost that takes away from development budgets. After managing on prem and cloud environments, I would almost never opt to run web applications on prem.
I am really working towards understanding this video and setting something like this up. I'll come back in 30 days and I hope to achieve this.
This really doesn’t need 30 days, have a go at it and have fun
you can get away with absolutely no music if your video is interesting and compact with information like this one, good job!
Great video, looking forward to trying it on my VPS. Not quite the same or as good as self hosted but I already have one so might as well give it a try.