so I am trying to build a blog, frontend + backend…
the thing I don’t understand is how many server do I have to pay in order to run a blog.
for example, if I use VUE as front end + firebase as backend, then I need to host my site on digital ocean, I have to pay two times? 1st, I need to pay firebase (let’s ignore the “free” plan all these companies offer) 2nd, I need to pay digital ocean as well?
is my math correct?
what if I use octoberCMS to build the platform, do I have to find the server to store all of my data, then pay for hosting as well?
Putting aside that this is probably a moot point ( it’s very unlikely you’d reach the limits of the free plan on Firebase if you are just talking about a blog). If you have a server plan on digital ocean, that means you can basically install anything you want, so you could just install a DB and use that. But in this case, you want to use a managed database service, so you would pay for that servivce as well.
The DO instance is a server, you can install whatever you want on it (within the limits that are set for the plan you are paying for). OctoberCMS is self hosted, so you can just install it on your DO instance and off you go.
Like if you need to make a meal, you need to buy a few different ingredients. In this case, the ingredients are: you need to host it somewhere (DO provides with a server you install things on). You need to store the data somewhere (you can do this on DO as well, or you store it somewhere else like Firebase). You need a domain name (you have to pay someone for this as well).
Edit: you pay for convenience. You can get incredibly cheap hosting if you want to do everything yourself. You pay slightly more for DO to have access to convenience tools that take away much of the effort needed to set something up. You can install the persistance layer yourself (the DB), or you could pay to use a service like Firebase, which takes all of the effort of setting up the DB and provides you with convenience tools to do all kinds of stuff. And on on
I believe the accepted answer is what your looking for, but I want to throw my comment into the ring, as I think it is important to keep things in perspective.
If you plan on building and running a blog, you can basically do it for free without much fuss, as long as your blogs requirements are straight forward.
The key is why you need a database in the first place, as a blog is primarily static content that is the same for everyone everywhere. This is where Static Site Generators come in and stuff like the JAM stack, where you compile your site and deploy the final compiled version. Now if you were planning on creating your own CMS that leverages a DB for a bunch of bells and whistles then this plan probably wont work, as you need a DB for stuff like user sign-ins, or “likes” or comments or other fancier features.
Now if you just want to run your own blog and worry less about the bells and whistles and focus on content and maintenance then keeping things simple is probably better. As such using just Firebase hosting and a static site generator would basically be a 2 line deploy (build -> deploy) be stupid fast, and basically free to run. (might have to pay for an actual domain if you want a non-firebase url)
I’d be less concerned about Firebase costs, as long as you build your DB correctly and don’t run into any of the big issues like reading the entire db for every user all the time. The only Firebase limitation I’d keep an eye out for is document size limits, which is 1mb which is pretty big for just plain text, but could be a concern depending on how you use your Firebase documents.
Otherwise Firebase is a cheap/free db along with mlab hosted mongodbs. If you need a back-end, free tier options are Heroku, Google App Engine, which are Paas offerings. DO and the other big three clouds all provide pretty cheap Iaas, but these may require much more maintenance and hand holding.
Just make sure you understand what each choice your making entails, don’t think you need to go run DO, and build everything from scratch if your goal is to just make a blog to build content.