Running Microservices in Production With Docker, Codeship, and Cloud 66
In preparation for an upcoming webinar, the folks at Cloud 66 are going into a bit of detail of how Docker, microservices, and DevOps all come together.
Join the DZone community and get the full member experience.Join For Free
In the countdown to our webinar next Wednesday, our good friends at Codeship suggested I give you guys a small teaser of what you can expect to get out of the session. And I'm only too happy to oblige with a sneak-peak of my webinar content covering the topic of running microservices in production.
Microservices are often called the Lego-esque building blocks for creating container-based applications. It provides a handy solution to breaking down monolithic apps, but what do I need to know if I want to deploy a microservice architecture? What sort of things do I need to consider before I containerize my application? And why are these things important?
Get it Right or Get Screwed
Docker is a great way to mix and match technologies to give you the flexibility to write microservices in any kind of language or dependencies. The path to succeeding with microservices in production starts with getting your image right, as your Docker image is the foundation of your service.
I intend to spend quite a bit of time talking about how to get your image right, why testing plays an important role in the deployment process and the additional considerations that play a role in moving your containers into production.
Why Crap in Just Means More Crap Out
We have a lot of data points from talking to and observing how our customers use Docker in production with Cloud 66. And we've managed to glean some pretty interesting observations, especially around how they tackle getting their code into containers.
Docker will NOT, and I repeat, will NOT solve your bad coding behaviours. While Docker allows us to define the environment our service process runs in, you still need to team it with good DevOps practices like testing, automation, security and version control. Otherwise, you're still producing crap and putting all your energies into polishing a turd.
Workflows That Work
When your team's starting a greenfield microservice architecture project using Docker as the proverbial 'polyglot glue,' you're going to need to determine a workflow that works. Not only that, you'll need to figure out how to get your containers from dev to live.
Some of the things you'll need to be looking at include what your local environment looks like? You'll need a plan around how to test your service, whether Docker will work with CI and if it's possible to automate the deployment of services in production using a Container-as-a-Service platform?
To tackle some of these workflow considerations, I'm putting together two microservice examples; one developed in Go and the other one in Ruby. This will give us a good grounding to go into the issues mentioned above, discuss the pitfalls and give you tips for how you can deal with these effectively.
Ready to kick off your microservices adventure? Then join me, Cloud 66 developer advocate Daniël van Gils and Codeship co-founder Manuel Weiss for this webinar on June 29th, 2016 from 11 a.m.-noon EST as we attempt to give you all the insights you need to get started.
See you then!
Published at DZone with permission of Daniel van Gils. See the original article here.
Opinions expressed by DZone contributors are their own.