Container development for all: Red Hat’s Container Development Kit
So Docker containers are all the rage, right? (If you didn’t know this, you do now.) 🙂 For a while now, Red Hatters have already been doing a ton of upstream container work on Docker, Kubernetes, and a new item called Nulecule.
But while Docker containers have skyrocketed in popularity, there’s been no convenient means to set up a development environment for building containerized apps. Wouldn’t it be handy to develop YOUR containerized apps for Red Hat Enterprise Linux from YOUR desktop? Apps that you can depend on for production?
The Red Hat® Container Developer Kit (CDK) does that – it was designed to allow you to set up a Red Hat Enterprise Linux container development environment on your own desktop(s), whether running Windows®, OS X, or Linux®.
The CDK is an evolving collection of tools designed to ease the creation and repeatable deployment of container-based applications. Today, version 1 includes Vagrantfiles and plug-ins, Red Hat Enterprise Linux images, and documentation. By utilizing the CDK and Vagrant, you’ll be able to more easily create container-based applications for use with Red Hat Enterprise Linux, Red Hat Enterprise Linux Atomic Host, and/or OpenShift V3. Rather than starting from scratch, as a developer using Windows, OS X, Fedora, and other Linux distributions, you can take advantage of pre-configured CDK images and tested Vagrant files to make installing Red Hat Enterprise Linux containers and developing container-based applications as quick and easy as possible.
How do you get the CDK?
There are 2 easy ways.
- If your company is a software (ISV) or hardware (IHV) firm that qualifies for the Red Hat Connect Technology Partner Program, you can join the “Container Zone” and get access to both RHEL and the CDK. Joining is free, as is the subscription.
- Join the new Red Hat Developers program (free to join) and acquire a Red Hat Enterprise Linux Developer Subscription. A list of the five Red Hat Enterprise Linux Developer Subscriptions can be found here.
With both options, you have access to the CDK as well as a lot of how-to’s, recommended practices, and more.
Here’s a bit more information about some of the CDK components.
Red Hat Enterprise Linux Vagrant Boxes
Red Hat Enterprise Linux Vagrant Boxes are Red Hat Enterprise Linux system install images pre-configured for use with Vagrant. They are being made available for Red Hat Enterprise Linux 7 and Red Hat Enterprise Linux Atomic Host, both available in formats for VirtualBox and libvirt.
Subscription Manager Vagrant registration plug-in
The subscription Manager plug-in automatically registers the Red Hat Enterprise Linux container host with the Red Hat Customer Portal when the vagrant up command is run and (then) un-registers the container host whenever you vagrant halt or vagrant destroy.
Vagrant Atomic plug-in
As Atomic Host uses a different update model from a traditional Linux distribution, it needs to be handled slightly differently by Vagrant. As a result, when using Atomic Host as a Vagrant Guest, we highly recommend installing this plugin.
So next, you’re ready to write code.
Once you have your container development environment set up, remember that we have dockerfiles for quickly utilizing the technologies in Red Hat Software Collections (scripting languages, databases, more) and Red Hat Developer Toolset (gcc, Eclipse, etc.).
- Attend Langdon White’s session, Enterprise Containers 101, Thursday, June 25, 3:40 pm., and learn how to use the CDK.
- Stop come by the Project Atomic booth (in the Community Lounge) for a demonstration of what is being assembled for the next version of CDK: the ability to create, test and deploy composite container applications for the complete Red Hat container portfolio. (using the Nulecule composite app specification).
It’s a wrap
To learn more, visit our Join the Red Hat Developer Program (it’s free) and get access to related cheat sheets (e.g. containers), books (e.g. microservices), and product downloads that can help you with your microservices and/or container application development.