15 Oct 2015 in DockerCon

DockerCon 2015 and the Future of the Container Technology

In my previous post, I told the story of how I came to find out about Docker, and how Docker has improved my development practice as a freelancer. In this post, I want to talk about why I’m excited by the interesting announcements, hot tools, and cool demos made public during the last Docker conference, DockerCon, held in San Francisco this June.

The theme of this year’s DockerCon was "Docker in production". There were around two thousand attendees. That’s four times as many as the previous year. And the previous year was the first ever DockerCon. This increase in attendance is a reflection of the phenomenal success and rising popularity of Docker.

Here are my take-aways from the conference.

Read More
8 Oct 2015 in Tutorial, Docker

Create and Share Your First Docker Image

In the previous post, we looked at Dockerfile instructions, Dockerfile syntax, Docker images, and Docker containers. Let’s put of all of this Docker knowledge we have into action, i.e. take a real life scenario, and use Docker to simplify it.

Imagine you’re developing an awesome new application and need a Redis service (more on Redis later) to handle its data. Now, you can install Redis locally if you’re the only one developing the application. But in a distributed environment, you want everyone to use the same set of similarly configured services so there are no surprises during deployment. A simple solution is to create a Redis Docker image and distribute it across the teams.

We’ll start by creating the Dockerfile. Then we’ll create the Docker image from the Dockerfile. We’ll run it as a containerized service. Then finally, we’ll learn how to use the Docker hub to share your Docker images.

Read More
1 Oct 2015 in Series: Ready Made, Containers, Docker, Round-up

Five More Popular Java-based Docker Images

In my last post, I looked at a few Java-based Docker images that can streamline your container workflow. I highlighted some of the issues you can run into when working with Apache Hadoop, Apache Tomcat, Apache Maven, Stash, and Glassfish in containers. I also provided a few workarounds.

In this post, we’ll review five more Java-based Docker repositories, along with some of the current bugs that you might run into when working with them.

Read More
24 Sep 2015 in Overview, Perspective

A Developer’s Journey into Linux Containers

Frustrated Developer

I’ll let you in on a secret: all that DevOps cloud stuff that goes into getting my applications into the world is still a bit of a mystery to me. But, over time I’ve come to realize that understanding the ins and outs of large scale machine provisioning and application deployment is important knowledge for a developer to have. It’s akin to being a professional musician. Of course you need know how to play your instrument. But, if you don’t understand how a recording studio works or how you fit into a symphony orchestra, you’re going to have a hard time working in such environments.

In the world of software development getting your code into our very big world is just as important as making it. DevOps counts and it counts a lot.

So, in the spirit of bridging the gap between Dev and Ops I am going to present container technology to you from the ground up. Why containers? Because there is strong evidence to suggest that containers are the next step in machine abstraction: making a computer a place and no longer a thing. Understanding containers is a journey that we’ll take together.

In this article I am going to cover the concepts behind containerization. I am going to cover how a container differs from a virtual machine. I am going to go into the logic behind containers construction as well as how containers fit into application architecture. I’ll discussion how lightweight versions of the Linux operating system fits into the container ecosystem. I’ll discuss using images to create reusable containers. Lastly I’ll cover how clusters of containers allow your applications to scale quickly.

In later articles I’ll show you the step by step process to containerize a sample application and how to create a host cluster for your application’s containers. Also, I’ll show you how to use a Deis to deploy the sample application to a VM on your local system as well as a variety of cloud providers.

So let’s get started.

Read More