+ All Categories
Home > Software > Docker Festival - Dreaming about Docker

Docker Festival - Dreaming about Docker

Date post: 22-Jan-2018
Category:
Upload: matthiasnoback
View: 329 times
Download: 1 times
Share this document with a friend
30
Docker Festival Dreaming about Docker Lucas van Lierop Matthias Noback @lucasvanlierop @matthiasnoback #dockerfestival
Transcript
Page 1: Docker Festival - Dreaming about Docker

Docker FestivalDreaming about Docker

Lucas van Lierop Matthias Noback@lucasvanlierop @matthiasnoback

#dockerfestival

Page 2: Docker Festival - Dreaming about Docker

Program for today

09:30 Introduction

10:00 Workshop

12:45 Lunch

13:45 Best Practices

14:15 Workshop

16:15 Share results

Page 3: Docker Festival - Dreaming about Docker

The container revolution; why is it so good?

Page 4: Docker Festival - Dreaming about Docker

Self-contained deployable units

Application code, configuration and dependencies, all-in-one

Instead of:

● (Manually) pre-configured server● Pulling code changes

Page 5: Docker Festival - Dreaming about Docker

Image-based deployments

No build steps on the production server

Instead of:

● Building the software on the production server● Non-deterministic builds

Page 6: Docker Festival - Dreaming about Docker

Limited abilities

Containers run in isolated environments

Instead of:

● Processes that implicitly have access to everything on the machine

Page 7: Docker Festival - Dreaming about Docker

Scheduling

Built-in resource management, rebalancing, scaling (even within one host)

Instead of:

● Custom tooling (Marathon, DC/OS, Consul)

Page 8: Docker Festival - Dreaming about Docker

What the container revolution encourages

Page 9: Docker Festival - Dreaming about Docker

Single Responsibility Principle

Focus on limited responsibilities per container/service.

Page 10: Docker Festival - Dreaming about Docker

Open/Closed Principle

Modify the behavior of a container by configuration through environment variables and secrets.

Page 11: Docker Festival - Dreaming about Docker

Architecture considerations

Focus on clear specifications for how the service is connected to its surroundings.

http://alistair.cockburn.us/Hexagonal+architecture

Page 12: Docker Festival - Dreaming about Docker

Focus on "everything in a box"

Self-contained, explicit, no loose ends.

https://12factor.net/

Page 13: Docker Festival - Dreaming about Docker

No attachment to servers

● No manual actions on the server● Provisioning fully automated● Pets vs kettle● Destroyable and recreatable infrastructure

Page 14: Docker Festival - Dreaming about Docker

What the container revolution enables

Page 15: Docker Festival - Dreaming about Docker

Continuous delivery

Container image: an actual build artifact

Page 16: Docker Festival - Dreaming about Docker

Polyglot programming

● Code● Persistence

Page 17: Docker Festival - Dreaming about Docker

Scaling of software units

Number of instances (horizontal scaling) versus the power of one instance (vertical scaling)

Page 18: Docker Festival - Dreaming about Docker

Scaling for organizational units

Number of teams, number of projects (horizontal scaling)

Page 19: Docker Festival - Dreaming about Docker

Monolithic and service-oriented development side-to-side

Containers encapsulate internal technologies; combine multiple programming models and paradigms in one system.

Page 20: Docker Festival - Dreaming about Docker

What it requires

What it requires

What it enables

Page 21: Docker Festival - Dreaming about Docker

Operations skills

Configuration, server management, monitoring, emergencies, recovery

Page 22: Docker Festival - Dreaming about Docker

Knowledge

About technologies used

Page 23: Docker Festival - Dreaming about Docker

Shared responsibility

Writing the code, and make it run in production (and keep it running).

Page 24: Docker Festival - Dreaming about Docker

Long story short: DevOps culture

Page 25: Docker Festival - Dreaming about Docker

DDD, BDD

Operations

UX, Design

Page 26: Docker Festival - Dreaming about Docker

Let’s get started

Page 27: Docker Festival - Dreaming about Docker

In the morning: two options

- Docker Introduction (Docker Engine, Compose, Machine, Swarm)- Your Next Step

Page 28: Docker Festival - Dreaming about Docker

Different stages of using Docker

1. Side project2. Development environment (e.g. instead of Vagrant)3. For Continuous Integration (CI) (stable CI environment)4. Deployment to a staging and/or production environment5. Images as build artefacts in a pipeline for Continuous Delivery6. Improve resilience of containers in a production environment

Page 29: Docker Festival - Dreaming about Docker

Use this day to take the next step

Page 30: Docker Festival - Dreaming about Docker

Time flies Pick small tasks, create issues

Check every half hour: am I still on track?

Share useful snippets, articles, etc.

Celebrate and share success

https://github.com/lucasvanlierop/docker-festival-workshop


Recommended