Hey folks,
Hosting images is something you don't think about when you start your first or second content project, but with time it can get interesting especially if you want to decouple yourself from third-party platforms as much as possible.
In my post about how to write your content in markdown and open-source your blog I propose as one possibility to host your images on GitHub as part of your Integrated Writer Environment (IWE).
Just push your images to GitHub and get the permalink of this file's particular commit state. As I understand, the only ways your image URLs will be lost are:
- You remove the according repository or branch
- You remove the repository
- GitHub dies
At the same time, cloudinary seems a great place to have your stuff on too, given their API and general capabilities.
- What do you think of the GitHub hosting approach?
- Where do you host your images forever and ever?
Top comments (7)
Google cloud storage could be a good option for you, you'll get a permalink and some features for managing your content. This does not apply to images only, you can also add PDF or other files for your users to download, and you cal also use the API to store user uploads on it.
Visit the official site for further detailed information.
Now, asking your question I don't see github as a valid option as you are blending services. I see git servers as version control services, not as storage ones.
I see this ans other similar solutions (including github pages) as things to use as a learner but as a professional you want more capabilities, control and features.
Thanks for the tip with GCP, Joel! I guess I could use AWS for exactly the same or does GCP offer some extra handy stuff?
You are totally right about separation of concerns. In my case it still might make sense since I've open sourced my content on GitHub anyway. This way it's a bit like using a static site generator, like Gatsby or Jekyll, where all the content including files and images is often in one place too.
I really don't know if AWS (or azure) offers a similar product TBH, we use both GCP and AWS and our CTO did the research and ask us to go for GCP so there must be some reason behind this decision, maybe features or cost π
When you opensource an app It depends on the way the product is distributed. If people will install the app on them own servers then store the multimedia on the same server it's hosted by default, then they will change it to use a distributed platform such as GCP or not depending on the count and usage of this multimedia or the globalization grade of their market share.
On the other hand if people will make instances of your app using your server it must be deployed into an escalable platform (distributed) in order to deal good performance everywhere, so the multimedia will be stored into some of this CDN like storages such GCP (or another) to avoid unnecessary data replication.
Have you a better idea or a different use case?
Gotcha! I think in terms if hosting your files GCP and AWS will serve the same way and on the scale of a personal blog the cost wonβt matter..
By βopen-sourcingβ I really meant my blog content. You just have your source of truth in GitHub and update on the different platforms accordingly whenever you make any changes.
it's not about hosting, it's about the API for store and retrieve files but yes, there are many ways to deal with that, it's simply a "try and conclude" to choose the best tool for you
One thing to keep in mind is that Github has limits on repository and file size.
Repository size:
File size:
If you have lots of images or big files, you'll eventually need to host them somewhere else.
Thanks for the tip! Never heard about it. Just found this SOF thread about a hard limit of 100 GB in GitHub: