2 Jul 2015 in Docker

Sailing Past Dependency Hell With Docker

Have you ever been excited to tinker with a software project, only to have dependency hell ruin all of the fun? As a software consultant, I face this situation all the time.

Luckily however, technologies like Docker take the pain out of spinning up additional components of your app architecture, like databases or job queues, or installing runtimes like Ruby or Python. By isolating processes from one another with very little overhead, you can sail past dependency hell.

Over the last year, I’ve worked on a number of different projects, encountered lots of of different requirements, and explored all sorts of ways of working through dependency conflicts. This is the story of my search for a solution, the pros and cons of each path I explored, and how I ended up using Docker.

Life as a Consultant, Day 1

When I started working as a consultant, I looked down at my beautiful new laptop and made a promise to treat it right. I wouldn't install a bunch of system extensions. I wouldn't tweak too many esoteric settings. I wouldn't bog it down with databases and other services.

Read More
25 Jun 2015 in Interview

Interview With Gabriel Monroy

Hello! Welcome to the new Deis.com blog. My name is Noah Slater, and I’m your friendly neighbourhood blog editor. To get things started, I’m going to chat with Gabriel Monroy, creator and current Benevolent Dictator of the Deis project.

Gabriel, why don’t you introduce yourself?

I’m Gabriel Monroy, the CTO at Engine Yard and the guy who started Deis back in 2013. I live and work in beautiful Boulder, Colorado, but I spend a lot of my time in San Francisco, New York City, and at tech conferences around the country. I love airplane wifi.

Okay, first things first… How do you pronounce Deis?

Read More
22 Jun 2015 in Announcement

Welcome to Deis.com

Welcome to the new Deis.com website. This site provides a place for the extended Deis community to meet, gather information, and work together as we move Deis into production across the industry.

Things are moving fast! Since OpDemand joined Engine Yard, we have:

Massively expanded the team working on Deis (2x, and still growing) Deployed our global support team to care for Deis deployments 24/7 Launched Deis PRO, featuring improved UX for clusters of containers

The entire Deis.com effort will be focused on building, extending, and supporting the Deis open source project. We value the community’s input and will continue the open roadmap process on our community website: Deis.io.

This is an exciting turning point for Deis. It is already been established as the leading platform for deploying containerized applications, with almost one million downloads total and over 1,000 downloads per day. It’s clear that hundreds of technical teams are deploying applications with the ease of use and reliability of Deis.

Read More
16 Jun 2015 in Announcement, NYI

Announcing Deis & NYI: Containers on Metal

Today we are excited to announce a new partnership with NYI, a colocation provider that is now offering Deis-on-metal solutions to customers in New York, New Jersey, and throughout the Northeast. As you may already know, Engine Yard’s Deis is the leading Docker-based Platform-as-a-Service (PaaS) for deploying and managing distributed applications. As Deis has matured, we’ve seen more and more users running on bare metal. We’ve also learned containers on metal offer significant price benefits, consistent performance, and a strong security and compliance story.

As part of this partnership, NYI is providing Engine Yard with the power, space, and dedicated servers for a distributed systems lab that will be used to harden Deis for large-scale colocation environments. This lab will allow us to test failure modes, network partitions, and performance deltas between Deis releases. The lab will also help ensure container on metal solutions meet customer standards for high-performance, scalability, and high-availability.

We are excited to work with the NYI team to see Deis and containers on metal reach its full potential. If you're interested in an in-person demo at an NYI facility, or just want to learn more about Deis and containers on metal, please contact our customer success team.

10 Jun 2015 in Containers, Overview

Isolation with Linux Containers

Note:This is part two of a two part series that starts here.

In part one of this series, we built a simple echo server, and took steps to isolate the privileges, filesystem, allocated resources, and process space. The things we did isolated the echo server process from all the other processes on the host.

In this post, we’ll look at how Linux Containers provide an easier, more powerful alternative. Instead of isolating at the process level, we’ll isolate at the OS level.

Introducing Linux Containers

Docker is the hot new thing, but Linux containers (LXC) have been around since before Docker launched in March of 2013.

The Docker FAQ cites various differences between LXC and Docker. While Docker now utilizes libcontainer, it originally wrapped the LXC user tools. In summary, LXC provided a wrapper around Linux kernel technologies, while Docker essentially provided a wrapper around LXC.

This post look at the following technologies in the context of LXC:

  • Kernel namespaces
  • Chroots (using pivot_root)
  • uidmap and gidmap
  • cgroups
  • Virtual Ethernet
Read More