19 Nov 2015 in Docker, Docker Hub

Six Ready-made NoSQL Database Docker Images

NoSQL is an umbrella term for a whole category of databases, many different in their featuresets, but united in that they depart in some way from the relational model used by databases such as MySQL and PostgreSQL.

In this post, we cover six ready-made NoSQL database Docker images.

For each image, we address some of the current bugs, and offer potential workarounds.

Rethink DB

RethinkDB is an OSS project built to store JSON documents and has been designed with horizontal scalability in mind. RethinkDB supports functions, table joins, aggregations, and groupings to bolster its native query language, ReQL.

ReQL differs from other query languages in that, rather than constructing strings for a query engine, developers work with ReQL via chainable methods directly from their programming language of choice. As well as being a easy to learn, this also mitigates against the posibility of injection attacks.

Read More
17 Nov 2015 in Helm, Kubernetes

Why Kubernetes Needs Helm

Earlier this week, Deis released Helm—the package manager for Kubernetes. Conceptually similar to Homebrew, Helm makes it easy to install standard workloads on Kubernetes.<!--more-->

But... Kubernetes is a container platform, so why does it need a package manager?

Perhaps looking at OS-level package managers (like Homebrew, apt, yum/rpm, ports, and so on) will help explain the situation.

Why use apt, yum, or homebrew?

Let's take a typical scenario.

I'm sat at the terminal in the chilly server room. I tried the command again: ./configure && make. Page after page of information scrolled across the screen. Apache httpd was building. I flipped open my book to read a few pages while I waited. Several minutes later, I saw the make command fail. I just wanted a stock Apache httpd server, but I couldn't figure the right combination of build flags, nor could I find and install all of the correct dependencies.

In frustration, I gave up and tried the radical approach: I switched operating systems.

Then when the time came to install Apache httpd, I simply typed apt-get install apache. And hey presto! It worked. If I needed to make changes, I could head to the /etc/httpd directory and configure away. But even prior to that I had a functioning web server. Apache httpd was working right out of the box.

Read More
12 Nov 2015 in CoreOS, VirtualBox

Get started with CoreOS and VirtualBox

Managing and scaling infrastructure is one of the biggest Enterprise concerns all over the world. The new wave of containerization led by Docker has made things a little easier. Applications can now be deployed on almost any system. You just need the appropriate Dockerfile and Docker installation.

But what if you have hundreds of containers and you need to scale them frequently? CoreOS helps you address this. Designed for security, consistency, and reliability, CoreOS is a Linux based operating system for clusters.

It is important to mention here that CoreOS doesn’t ship a package manager. Rather, it comes with Docker pre-installed and CoreOS lets you use containers to manage your services instead of installing packages. So, for every service that you need (e.g. web server, database, cache, and so on) just create and use a container. CoreOS uses systemd and fleet to manage the containers and connects the containers together using etcd.

CoreOS is supported on almost any platform. That includes bare metal cloud providers like Amazon EC2, Azure, DigitalOcean, and Google Compute Engine. It also includes virtualization platforms like VMware, VirtualBox, and even cloud based operating systems like OpenStack.

In this post we will focus on installing CoreOS on your laptop (using VirtualBox) and we’ll learn some CoreOS basics while we’re at it. We’ll look at systemd, fleet, and etcd in future posts.

Read More
9 Nov 2015 in Helm, Kubernetes, Announcement

Introducing Helm, The Kubernetes Package Manager

We at Deis are really excited about Kubernetes. In fact, we're hard at work building Deis v2 on top of a Kubernetes base. During this integration, we developed a tool that we think seasoned Kubernetes users will enjoy, and newcomers can use as an onramp for running containerized applications. And today, we're thrilled to announce this new tool.

We call it Helm, and it's the first package manager for Kubernetes.

Inspired by Homebrew, apt, and npm, Helm is a tool for working with Kubernetes-powered applications. It works like this:

  • A Helm package is bundled up as a chart.
  • The charts are collected together in a repository that you can search. Helm uses git under the hood for storing and organizing chart data.
  • Using the helm tool, you can find, customize, manage and install these charts.

Helm makes it easy run apps and services inside Kubernetes.

Helm's Goals

We built Helm to help with two things.

First, we want to make it simple to share information about running common apps and services inside of Kubernetes. When we all share our charts, the Kubernetes community at large learns how best to work with Kubernetes. We share information and discover great ways of doing things. And we also make it easier for newcomers to get going. Helm is about growing Kubernetes.

Second, we want to make it easier for teams to manage their Kubernetes manifest files. So we created a tool that eases the process of collaborating on and keeping track of your team's charts. Start with widely available charts, customize them to your team's needs, and then store them in your own version control. Helm is about helping teams.

Kubernetes is a powerful platform. We want to make it easy to manage the apps and services you deploy.

Read More
5 Nov 2015 in Series: Ready Made, Docker, Database

4 Ready-made MySQL Database Docker Images

MySQL is a widely used Relational Database Management System (RDBMS) across organisations large and small. Companies using MySQL for their database needs include Facebook, YouTube, and Booking.com.<!--more-->

In this post, we take a look at four ready-made MySQL related Docker images. For each one, we’ll address some of the current issues that may affect you when using the image, and offer ways to work around them.

Read More