Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Simplify your dev life with Docker (WebElement Banská Bystrica)
Vladimír Kriška
August 20, 2015
Programming
0
68
Simplify your dev life with Docker (WebElement Banská Bystrica)
Vladimír Kriška
August 20, 2015
Tweet
Share
More Decks by Vladimír Kriška
See All by Vladimír Kriška
Twelve-Factor app with Docker
ujovlado
0
11
Design a REST API you will love to work with
ujovlado
0
480
Docker for PHP developers - Tips, Tricks & Lessons learned
ujovlado
3
230
Docker ‐ from development to production in minutes (PoSobota #91)
ujovlado
0
130
Non-traditional use of Docker (Nette Camp #3)
ujovlado
0
47
Contributions [lightning talk] (PyconCZ 2015)
ujovlado
0
33
CSS Flexbox (WebElement #35)
ujovlado
0
81
Don't underestimate CSS (WebElement #30)
ujovlado
0
460
Database Migrations in PHP (Posobota #66)
ujovlado
0
49
Other Decks in Programming
See All in Programming
Managing gRPC with Wire
oldergod
2
150
코드 품질 1% 올리기
pluu
1
890
Cloud Bigtable を使いこなす秘訣 2022
kusahana
0
230
Micro Frontends with Module Federation: Beyond the Basics @jax2022
manfredsteyer
PRO
0
280
JGS594 Lecture 23
javiergs
PRO
0
400
How to get satisfaction from ungrateful work: A journey into updating Kotlin
syrinet
0
120
Reactでアプリケーションを構築する多様化
sakito
4
3k
あなたの会社の古いシステム、なんとかしませんか?~システム刷新から考えるDX化への道筋とバリエーション~/webinar20220420-systems
grapecity_dev
0
120
プログラミングを勉強したいと言われたら
yuba_4
0
360
PublishでWebサイトを構築してみた / generate_website_with_publish
uhooi
2
110
Where and how to run UI tests (Droidcon Lisbon & Android Makers, Paris)
nonews
0
110
Explore Java 17 and beyond
josepaumard
3
630
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
PRO
11
4.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
15
910
The Mythical Team-Month
searls
208
39k
A Tale of Four Properties
chriscoyier
149
20k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
181
15k
4 Signs Your Business is Dying
shpigford
169
20k
The Most Common Mistakes in Cover Letters
jrick
PRO
4
24k
Fashionably flexible responsive web design (full day workshop)
malarkey
396
62k
Art, The Web, and Tiny UX
lynnandtonic
280
17k
Testing 201, or: Great Expectations
jmmastey
21
5.4k
What's new in Ruby 2.0
geeforr
336
30k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
103
16k
Transcript
Simplify your dev life with Docker Vladimír Kriška (@ujovlado) WebElement
Banská Bystrica
Past (vedle pasti) • New computer • Install Apache|Nginx, MySQL|PostgreSQL,
PHP, MongoDB, etc., etc. • Start services … start coding After few weeks • OMG this project needs newer version of MySQL • Problems • And problems
Future • New computer • Prepare Dockerfile with exact requirements
• Build it • Run it (with services inside) … start coding After few weeks • OMG this project needs … whatever • Never mind, I'll build a new container • Profit
Yo Dawg, I heard you like computers So I put
computer into computer, So you can computer while you computer
What is Docker? "Docker is an open platform for building,
shipping and running distributed applications."
What is Docker for me? Primary • Engine for working
with containers • Any virtual machine • Testing platform • Tool to not install "shit" to your computer Not yet • Running in production
What really Docker is? Same as your system • Set
of files with "/sbin/init" file So, you can • Take parts of your system and virtualize them without need to virtualize full OS
Containers without Docker (!) https://chimeracoder.github.io/docker-without-docker mkdir debian-tree debootstrap --arch=amd64 unstable
debian-tree systemd-nspawn -D debian-tree/ /bin/bash machinectl list machinectl poweroff debian-tree
OK, let's go Three basic steps 1) Create Dockerfile 2)
Build it 3) Run it
Dockerfile & Build & Run FROM debian:jessie RUN apt-get update
&& apt-get upgrade -y RUN apt-get install nginx -y RUN mkdir -p /data COPY package.tar.gz /data/ EXPOSE 80 docker build -t wblmnt/bb . docker run -i -t --rm -p 8037:80 wblmnt/bb:latest
Case I & Case II Everything in one container •
Easy to start • Same as any virtual machine / container • Need to commit changes at the end (as many times as containers count)
Case III Multiple containers with separate store • For production
environment • Hard to setup • Deployment?
Examples
Thanks