The Shippable Blog

Pushing your Docker image to Amazon ECR after CI

Amazon provides a hosted private registry for Docker images called EC2 Container Registry (ECR) as part of its container focused suite of services. Many of our customers seem to love the ECR and ECS (EC2 Container Service) combination to store and run their applications. Amazon ECR can be accessed by going to your AWS Management Console, selecting EC2 Container Service, and clicking on Repositories in the left sidebar. 

In this blog post, I will go through a simple scenario with a sample project where we enable a project for CI, build a docker image as part of the workflow, test the image, and then push it to Amazon ECR. In the next blog, we will then set up the rest of the Continuous Delivery pipeline for the sample application.

If you want to follow along with the step by step tutorial you can fork the sample used in this tutorial, sign in to Shippable, and set up the CI/CD workflow as described. 

Sign in for free

Pushing to JFrog Artifactory after CI

We recently added  a native integration with JFrog's popular artifact repository, Artifactory. You can now add your JFrog credentials to your Shippable account and then perform the following actions as part of your CI/CD workflow:

  • Pull dependencies from Artifactory
  • Push files, versioned packages, or artifacts to Artifactory
  • Trigger your continuous delivery pipelines if a file/package stored in your Artifactory account changes

JFrog's Artifactory is one of the most advaced repository managers available today. It is open source and especially popular with Java app developers and also Enterprises that want to self host a repository manager for their projects.You can learn more about Artifactory here.

Let us see how this works with a sample project which builds the sample code and creates a .war file which is then pushed to Artifactory. Follow the step by step directions below to set up CI for the project and push to Artifactory.

CI/CD enhancements: JaCoCo, JFrog Artifactory, and more

Happy 2017! As the new year kicks in, we wanted to start a monthly blog that lets you know the new features we've launched in the last month. No more trees (aka features) falling silently in the forest... they'll make a big THUDDDDD in this monthly series. So without further ado.... TA DA!

Continuous Integration

Custom variables for manual builds: You can now inject custom environment variables while triggering a manual build through the UI. This is great while debugging when you don't want to make fake commits just to trigger builds with different env values. 

Integrated JaCoCo code coverage reportsYou can visualize rich reports within the Shippable UI and drill down to see which llnes of code are not covered by your tests. 

7 things to consider while moving to a microservices architecture

In part I of my four part blog series on Microservices, I explained what microservices are and the benefits you will see by adopting this architecture.

However, life is all about tradeoffs. In part II of this series, I will go over the things you need to consider while moving to microservices, as well as some challenges that crop up even when you do everything right.

Microservices for greenfield projects

Anytime your team develops a new application from scratch, it feels great not to inherit technical debt and be locked into outdated decisions made years ago.  Most teams developing new apps today would probably choose to containerize them using Docker and adopt microservices architecture for speed and agility.

Declarative Continuous Deployment Pipelines with Docker

Everyone agrees that continuous deployment helps accelerate innovation. However, Continuous Deployment (CD) today is synonymous with fragile homegrown solutions made of disjointed tools cobbled together with thousands of lines of imperative scripts. Avi Cavale walks you through the CD maturity model and demos an end to end continuous deployment with declarative pipelines for Docker applications.

This video was taken at the Docker Seattle Meetup, hosted by Tune.