Docker

Docker is an open platform for developing, shipping, and running applications.

Features

FeatureDockerLocal
IsolationYesNo
Dependency conflictNoProbable
SecurityHigherLower
Version controlYesNo
PortabilityYesNo
SpeedSlowFast
DebugHardeasy

Use case

Use Docker if we need:

Use case

Cost

Using Docker for applications comes with different costs:

Image size

We can reduce Docker image size by:

Smaller images are nice, but be aware of some possible pitfalls.

For example, you can use the Pyinstaller to bundle the bytecode of your Python application and its dependencies, plus the Python interpreter binary into a single executable, and reduce the image size by 50%. But you may find out that:

Therefore, be mindful of these caveats and consider using this kind of bundler only when image size is the bottleneck of the system.

Security

Here are some tips to increase security when using Docker:

See also

←Previous Next→