Docker containers are a fantastic way to package an application along with all of the dependencies it needs to run, and systems like Kubernetes and Docker Swarm make managing and scaling clusters of Docker containers easy.
Octopus adds a layer of orchestration on top of that, allowing you to create releases of your solution that involve a mix of traditional applications/deployment targets as well as Docker containers. Any significant application will involve a mix of applications within containers, applications and services outside of containers, and infrastructure and people that need to be interacted with during the deployment.
Predictably deploy Docker images
Build your container image once, and use Octopus to deploy it to a test environment, then promote that same image to production when you finish testing - ensuring what you deploy to production is what you just tested. Octopus can fetch images from any Docker registry, including Docker Hub, Azure Container Services and AWS EC2 Container Services.
Octopus can deploy directly to Docker Hosts if you aren't using a Docker cluster manager, which is useful for test environments. Octopus can handle Docker networking, deploy containers, and start and stop containers.
Deploy your container images to Kubernetes-managed cluster. Have your say on the Octopus Kubernetes RFC..
You might also like...
@OctopusDeploy Really liking the new GUI in @OctopusDeploy 4.0, both good looking and fast. Great work!— Johan Boström (@zarx) November, 21 2017
I’d stand by @OctopusDeploy every day of the week. Honestly couldn’t imagine our CD working as smoothly without it.— Ben Macpherson (@BenjiMac93) November 18, 2017