The Shippable Blog

Immutable containers with version tags on Docker Hub

 Immutable containers with version tags on Docker Hub

Lately, several folks have asked us about our reasoning behind adding build numbers as the version tags for Docker Hub images. Briefly, our current flow is -

- Pull code from GitHub
- Pull image from Docker Hub (or build from a Dockerfile)
- Run CI in the container
- If CI passes and push to Docker Hub is configured in the yml or Project Settings, push image to Docker Hub with a version tag <image name>:<build number>

The question is - why don't we just tag the image with <image name>:latest? What is the value behind versioning images?

ApacheCon and Shippable's DevOps transformation with Slack, GitHub and Docker

This week, the Shippable team had the opportunity to present 'Modern DevOps with Docker' (describing our internal transformation - see below for more) and engage with the community at ApacheCon 2015 in Austin, TX.  We saw firsthand how the thriving group of dedicated professionals in the Apache community are tackling big challenges across the full tech spectrum.  In addition, while in Austin, we had the chance to connect with the tight-knit and talented DevOps Austin community and learn from their perspectives.  It was an energizing three days.

Get that Kubernetes cluster working !!!

[Devashish Meena is a senior developer at Shippable that offers cloud based Continuous Integration and Continuous Delivery platform. For more technical posts from Devashish, visit his blog. You can also follow him on Twitter  and GitHub.]

-----------------------------------------------------------------------------------------

kubernetes cluster

This guide demonstrates how to build a 2 node kubernetes cluster. Kubernetes comes with a set of scripts to install on different cloud providers and locally on vagrant box that can be used for the cluster setup but the idea here to provide an installation mechanism that is provider and OS agnostic. So, at the end of this guide, we'll have a script that can be run on any two machines that can communicate with each other. The script will download the specified kubernetes and etcd release, install all necessary components to bring up kubernetes master and slave nodes,  and configure the components before booting them up.

Continuous Delivery using Shippable and Amazon Elastic Beanstalk (Java+MySQL edition)

DEPRECATED BLOG:

We have significantly updated the Shippable platform with several new features. Hence most of the content in this blog is deprecated. Given below are updated blogs for the series - How to deploy to Elastic Beanstalk

  1. Part 1 covers source code deployment to AWS Elastic Beanstalk using a Node.JS app
  2. Part 2 covers deploying a Docker container to AWS Elastic Beanstalk using a Node.JS app

For the latest information, refer to our documentation and/or open a support issue, if you have questions.


Try Shippable


This recipe will introduce continuous delivery using Shippable and Amazon's Elastic Beanstalk platform-as-a-service.

While you don't need to be an expert to use this guide, you will need to have:
  • A GitHub account, and working knowledge of git source control
  • Experience with a java programming environment
  • Experience with MySQL databases
  • Local installations of Java7, Maven and MySQL
  • Account permissions and keys for deploying to Elastic Beanstalk 

The world this week (in CI/CD/devops)

Welcome to this week's edition of the news, blog posts and articles about continuous integration / deployment and software development in general that we found interesting!

  • eBay engineering describes the evolution of eBay's CI system. eBay started off with an individual CI/Jenkins Master setup for each dev.  eBay used a dedicated VM for each developer (each Jenkins instance had a dedicated VM). This got inefficient pretty fast resulting in underutilized VMs as well as too many VMs in general. Read about eBay's CI solution and how they arrived at it.