Subscribe / Unsubscribe Enewsletters | Login | Register

Pencil Banner

You're doing it wrong: 5 common Docker mistakes

Serdar Yegulalp | Feb. 29, 2016
It's easier than you think to use Docker in ways that harm, not help, your setup

The reverse can also be true: Sometimes, you don't want the cache to preserve everything, but purging the whole cache is impractical. The folks at CenturyLink have useful notes on when and how to selectively invalidate the cache.

Using Docker when a package manager will do

"Today Docker is usually used to distribute applications instead of just [used] for easier scaling," says software developer Marc Scholten. "We're using containers to avoid the downsides of bad package managers."

If the goal is to simply grab a version of an application and try it out in a disposable form, Docker's fine for that. But there are times when you really need a package manager. A package manager operates at a lower level of abstraction than a Docker image, provides more granularity, and automatically deals with issues like dependency resolution between packages.

Here and there, work is being done to determine how containers could be used to replace conventional package management altogether. CoreOS, for instance, employs containers as a basic unit of system management. But for now, containers (meaning Docker) are best suited for situations where the real issues are scale and the need to encapsulate multiple versions of apps without side effects.

Building mission-critical infrastructure without laying a foundation first

This ought to be obvious, but it always bears repeating: Docker, like any other tool, works best when used in conjunction with other best practices for creating mission-critical infrastructure. It's a puzzle piece, not the whole puzzle.

Matt Jaynes of Valdhaus (formerly DevOps University) has noted that he sees "too many folks trying to use Docker prematurely," without first setting up all the vital details around Docker. "Using and managing [Docker] becomes complex very quickly beyond the tiny examples shown in most articles promoting [it]," says Jaynes.

Automated setup, deployment, and provisioning tools, along with monitoring, least-privilege access, and documentation of the arrangement ought to be in place before Docker is brought in. If that sounds nontrivial, it ought to.

Source: Infoworld 


Previous Page  1  2 

Sign up for CIO Asia eNewsletters.