A Modern Continuous Delivery Process for Your Docker Applications
CircleCI can support any Docker-based build, test, and deployment workflow. With complete flexibility to run any Docker commands and access public or private registries, you can ship modern applications faster and more reliably than ever before.Sign Up for Free
We've all heard a lot about Docker– why exactly is everyone so excited?
Any containers you use locally as part of your dev environment, as well as any containerized services that will be running in production, can also be run in your test environment on CircleCI. Just
docker pull in anything you need.
Deploy Any Application as a Single Binary Artifact
Don't you love the thrill of making sure you have a robust set of scripts and recipes to setup the same exact same Nginx, uwsgi, and Django configuration on every production server? Of course you don't! Docker lets you specify everything from your Linux distro to config files to what executables run at startup in a Dockerfile, build all of that information into a Docker image, test it, and deploy the exact same image byte-for-byte to production.
Efficient OS-level Containerization
Dividing infrastructure into many little VMs wastes a lot of computing resources by over-allocating CPU, RAM, and Disk capacity to each VM. On the other hand, higher-level, PaaS-style encapsulation is often too restrictive for application and service developers. Docker's model takes advantage of Linux kernel features to achieve lightweight isolation between containers. This allows for much more efficient utilization of computing resources, giving you more bang for your hardware buck.
Using Docker on CircleCI
Here are just a few of the things you can do with Docker on CircleCI.
Public and Private Docker Registry Support
You can use the
docker pull and
docker push commands as usual on CircleCI, meaning that you can interact with any Docker registry server.
Easy Integration Tests for a Microservice Architecture
You can run as many Docker containers as you like on CircleCI. If your production application consists of three interconnected services, you can pull them all down into a CircleCI container, link them together, and test them together.
Continuous Delivery of Your Docker Images
Once you have built an image and optionally pushed it to a registry, CircleCI makes it easy to deploy applications to AWS Elastic Beanstalk, Google Container Engine, CoreOS, Docker Swarm or any other host that can run Docker containers.
CircleCI checks out your code from GitHub.
2. Docker images
Docker base images, or images for any dependent services can be pulled from any Docker registry.
3. Build and test
CircleCI builds, runs, and tests Docker images in any configuration.
4. Docker registry
When all tests pass, built Docker images are pushed to the registry.
CircleCI can trigger a deployment of new images to any Docker host with an API.
DevOps Engineer at Bleacher Report
“With just one line of code you have access to all of the power of Docker.”