Docker deployment - Deepstash

Keep reading for FREE

Docker deployment

Docker deployment

On the same host:

  • Docker Compose - creates a .yaml which specifies the used containers; can deploy and run containers from a single command; can define persistent volumes for storage, databases and service dependencies;

On different hosts:

You need container orchestration tools.

  • Docker Swarm
  • Kubernetes
  • AWS EKS
  • OpenShift

What ACTUALLY is Docker

What ACTUALLY is Docker

Docker enhances the native Linux containerization technologies which enables:

  • seamless portability: can run natively across any desktop, data center or cloud development
  • granular updates: only one process runs in a container. An application can continue running without a container being taken done
  • automatic container creation: based on application source code
  • container versioning: tracking image versions and roll backs are fast
  • container reuse: base images can be used as templates for nee containers
  • shared container libraries: an open source user contributed container images registry

Why it’s actually not a VM

Why it’s actually not a VM

Containers don’t come with the weight of a full OS image and a hypervisor.

Containers include only OS processes and dependencies necessary to execute the code inside them.

Containers occupy less space(MBs not GBs) which means you can run multiple copies of the same application on the same hardware.

Containers are faster and easier to deploy, provision and restart. This make them ideal for CI/CD pipelines and a better fit for Agile development teams.

What is a Container

What is a Container

Think like a Virtual Machine but:

  • light weight
  • great resource efficiency
  • improved developer productivity

Where containers differ from VMs is the fact that they take advantage of the Linux kernel which comes with process isolation and virtualization capabilities.

These capabilities are control groups(allocating resources), and namespaces(restricting a processes access to other areas of the system).

Some real world examples would be the fact that a container has a specific place on the ship and a container lock, which keeps everything secure inside it.

Docker tools

Docker tools

DockerFile - every container has one and states the instructions for building the container’s image. It consists in command-line instructions;

Docker images - contains executable source code, libs and dependencies the code needs; Read-only file; A Docker image can be build from scratch, most developers reuse common ones from repositories;

Docker containers - the live and running instance of the Docker image; Ephemeral, users can interact with them, run commands and adjust settings using docker commands

Docker registry - open source distribution system and versioning using git

What Is Docker?

What Is Docker?

Docker is an open source containerization toolkit which enables developers to package applications into containers.

As the name suggests, Docker is like a container ship which provides means to sort, link, manage and ship containers from a development setup into production.

It's time to
Read like a Pro.

Jump-start your

reading habits

, gather your

knowledge

,

remember what you read

and stay ahead of the crowd!

Save time with daily digests

No ads, all content is free

Save ideas & add your own

Get access to the mobile app

2M+ Installs

4.7 App Rating

CURATED BY

pvl

Backend @deepstash

CURATOR'S NOTE

Docker is a very powerful tool for development and code deployment. This is what you’re missing to take it to the next level!