We are LIVE! Now with Docker and Ghost


Image

It's been quite a while since my last post. Although I haven't been blogging much, I have still kept up with what's new in the industry. Recently, I've better adjusted to some of the new things happening in my life. I've had a little time to work some of the things on my ever-growing "To Tinker With" list.

Which leads me to...this. The nth iteration of my blog. It may not feel different from the very first iteration but it's gone through a lot! We've been through blogger, wordpress, a custom .com domain, self-hosting and all the way to this, a Ghost blog running on Docker [1]. I've learned a ton throughout the ride and it still keeps on going. This blog has always been my playground on learning new things and sharing what I've learned along the way. This would be no different.


Ball Don't Lie

The Name

Something I've seem to unconsciously done in the past is to find a new name for my blog while doing major transition. I don't really know if that's good SEO but whatever. This time the theme is my passion for development with a hint of humor. My blog has always been laid back, chill and never taking things too seriously.

Timeline: A short retrospect of the names and platforms

  • Kain Tulog Internet (Eat Sleep Internet) - Blogger
    • The very first name I came up with wasn't very original. When I created it way way back in 2010, it was a place to just share random things as I can never stick to a theme. I have a lot of interests. I blogged about food, culture and a few other things.
  • Super Mekanismo (Super Mechanism) - Wordpress
    • After a few years, I was kinda getting disappointed and bored with blogger. I explored Wordpress and it seemed like the best choice at the time. It was the most mature platform compared to some services that eventually shut down. In hindsight, it was a good choice.
    • Krisviceral.com - I eventually got my own domain and setup all that stuff. Who knew CISCO classes was useful[2]?
  • Over a Cup of Coffee (http://krisviceral.me) - Ghost
    • My personal blog. There isn't much there at the moment but I've intended it to be a place for more personal ramblings whereas http://krisviceral.com would be where some sould could dig through and find some valuable information
    • My own server: I've also tinkered around with self-hosting. This would be my first exercise of renting a server (More info later, if you want to give it a go head over here.
    • Ghost: Ghost is a new blogging platform. As with most new things, it has growing pains but so far enjoyed it. Simple and focused. I can get my hands dirty with some js and css coding too if I wanted.
  • Code Don't Lie (http://krisviceral.com) - Ghost on Docker
    • Name: It's a play on "Ball Don't Lie", a popular phrase by a former professional basketball player. It refers to karma in basketball. Interestingly enough, the phrase works well on software development. Your comments may mean one thing, the documentation may say another but one thing that will always be true is the code.
    • Ghost and Docker integration are explained further in the "Current Stack" section

The Candidate List: The names I came up with before choosing Code Don't Lie.

  • Drop Table
  • Testing in Production
  • Ctrl + Shift + K
  • Codecidal
  • Accidental Commits
  • Crash and Burn
  • Code Don't Tell
  • Code Don't Lie
  • DOM break my heart
  • Not my Code
  • It wasn't me
  • Off By One
  • Catch Exception E

Current Stack

As promised, this section describes a little bit of what's currently running. Before we describe it though, it's good to get a brief idea of what the hell I'll be talking about.

Ghost Blogging Platform

What is Ghost

Ghost is an open-source blogging platform dedicated to publishing. Open source meaning the whole code is freely available to anyone on Github to view and contribute to. Interestingly enough, the whole project is run by a non-profit team called Ghost Foundation with a fully transparent roadmap and financials. The team along with a ton of volunteers make the project possible.

Why Ghost

Why did I choose Ghost? Hmm... A couple of factors come into play with the biggest being simplicity. The whole platform is focused on writing and publishing. You install it, type in a name and in a few minutes, you're writing. You have your content, your editor for a new post and a few settings. Nothing else to worry about.

Wordpress eventually became a jack of all trades platform. It feels like an e-commerce platform that happens to have some blogging functionality. Everyday there seems to be bugs and exploits on it and it never felt worth it to try and host it on my own. Having people take care of your blog is nice but having full control of the whole system without worrying too much about the unnecessary things is the second biggest factor. Self hosting Ghost felt like the best approach.

Do I recommend Ghost? A cautious yes. Even with a lot of progress, the platform is still in it's infancy. Version numbers don't really count (it's at 0.6.2 as of writing) but right now I feel as if it doesn't have enough at it's core to recommend to everybody. There are little things here and there that just makes the whole process not as seamless. Some things include the marketplace for themes (no sorting), until the latest release it was missing "previous" and "next" post and probably the biggest barrier is that there aren't free services available for people to try out.

I would really like to recommend it but there doesn't seem to be an equivalent to getting a myblog.wordpress.com for just curious non-techie folks to try it out. An example would be aspiring writers, poets, regular moms, the people who would never would buy a .com domain, university students or me a few years ago. I completely understand why there is none (so far), it's a non-profit and they don't put ads I believe so they need to get their financials in check. Regardless, I think something similar should be in place before I can recommend it to most folks.

On a side note, a "discover" tab might be an interesting feature. I would like to discover what other people write about in a Medium-like stream.

Anyway, the team is constantly releasing new updates and I'm sure my answer could change in a few months.

Why not Medium or Tumblr or others? Good question, imaginary reader. Medium, I must admit, was on my shortlist for the same simplicity and focus on writing. One thing I don't like too much about it is the lack of control (Head's up: Haven't fully tried it). I want to make my blog personal (look and feel and other simple customization) and I don't see that in Medium. Tumblr? I'm not 16 anymore. That seems to be their target market and most of the things I see are blogs littered without content and mostly gifs. Other alternatives? A lot of them have disappeared or never lasted.

Docker

What is Docker

Now, this part is a little more technical for majority of people. From Wikipedia...

Docker is an open-source project that automates the deployment of applications inside software containers, by providing an additional layer of abstraction and automation of operating-system-level virtualization on Linux...(Wikipedia)

In computer-science layman's terms, it's a server that can have multiple servers on it. It does it efficiently so that your common resources are effectively used and shared. You can mix and match and run whatever you want on a single machine. You can have a "container" (or think of it as a server) running an application, another hosting a database and another one running a blog. All those containers can have different operating system, allocations, configurations and so on.

Why Docker

Okay, now why docker? First and foremost is learning. Docker is one of the fastest software being adopted that I've recently seen. Enterprises don't like new things unless they are proven and stable but Docker even if it's relatively new (1.6.0 right now) is already being used by Fortune 500 companies. Crazy.

On a more personal objective is cost, I can have one slightly beefy server running hosting a million different things instead of paying x amount for hosting every new side project I decide to try. For example with DigitalOcean (try it here), I can rent a $10 server that can hopefully run this blog, a simple web application, a simple database and more instead of $5 for a blog, $5 for a web application, $5 for a database server, etc. You get the point.

How do I setup a similar thing? Well... it's 1 am and that's another blog post for another time.


Conclusion

I finally have my blog running again and even if it doesn't look much different, it's been totally revamped different inside and out. It was fun trying Docker and Ghost. New phase in life, new adventures and a new blog. Hopefully, this site will get updated more regularly from now on.

Cheers!


Footnotes

  1. more on this on the section "Current Stack" ↩︎

  2. Just kidding. Networking classes are actually pretty useful on a everyday basis. ↩︎