Files
awesome-kubernetes/docs/docker.md
Inaki Fernandez bac42594f7 new clips
2022-09-29 16:59:01 +02:00

43 KiB
Raw Blame History

Docker

Introduction and Tutorials

Docker CLI

Docker Swarm

Awesome Lists

Docker VS Kubernetes

Docker Patterns and Antipatterns

Docker Security

How To Build a Smaller Docker Image

Reducing Build Time

Modify containers without rebuilding

Docker Tools

Docker and WSL2

Docker and Docker Swarm Cheat sheets

Docker Compose

Moving Linux Services Into Containers

Windows Containers

Portainer

DockStation

Linux Container Base Images

Blogs

Cloud Native Buildpacks

Alternatives to Docker. Available alternatives to Docker for OCI compliant container image building

Videos and Podcasts

Click to expand!

Tweets

Click to expand!

Environment variables in Docker:

Environment variables are dynamic-named values that affect how our app will behave when running.

We can define them with Docker:
- at runtime
- in the Dockerfile
- in the Compose file (2 ways)

Let's see in detail in 1 minute:

1/5

— Francesco Ciulla (@FrancescoCiull4) May 15, 2021
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Introduction to Docker🐳@Docker is an open-source platform for deploying and managing containerized applications. It allows developers to easily package their applications into containers that can be deployed on every machine with a valid Docker installation.

Thread 🧵👇

— Gabriel Tanner (@GabrielTanner14) December 13, 2021
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

How to grasp Containers and Docker (Mega Thread)

When I started using containers back in 2015, I thought they were tiny virtual machines with a subsecond startup time.

It was easy to follow tutorials from the Internet on how to put your Python or Node.js app into a container...

— Ivan Velichko (@iximiuz) August 7, 2021
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Okay @awscloud Lambda folks: when should I use Docker containers as the packaging format for functions vs. using native runtimes? Looking for general guidance here.

— Corey Quinn (@QuinnyPig) March 28, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Mostly bc of the package size limit.
Standard code zip: max 250 MB
Docker image: max 10 GB

If you do anything in Python with ML libs, you will need Docker...

Why use native runtimes otherwise? Cold start.
Docker: 750-1000 ms
Node/Python: 250-300 ms

— Maciej Radzikowski (@radzikowski_m) March 28, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Docker Compose + DockerSlim = ❤️@DockerSlim can make your images much smaller (hence, faster and securer), but it requires launching containers for runtime analysis.

Real apps, though, rarely run in isolation... Docker knew that and built Compose.

Now, behold the synergy! 🔽 pic.twitter.com/n6NlJokC95

— Ivan Velichko (@iximiuz) July 13, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Debunking Container Myths 🧵

A (never-ending) series of articles that I started writing a couple of years ago to fix my own misconceptions about containers 🔽 pic.twitter.com/bD7Iw48ere

— Ivan Velichko (@iximiuz) August 28, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

What Is a Distroless Container Image? 🧵

Go (programming language) is famous for its statically linked binaries. You can take a Go executable, drop it into a "FROM scratch" container, and call it a day.

But there might be a problem (keep reading) 👇 pic.twitter.com/kskCI3rqCC

— Ivan Velichko (@iximiuz) September 5, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>