Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Simplify your dev life with Docker (WebElement ...
Search
Vladimír Kriška
August 20, 2015
Programming
0
170
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
120
Design a REST API you will love to work with
ujovlado
0
760
Docker for PHP developers - Tips, Tricks & Lessons learned
ujovlado
3
480
Docker ‐ from development to production in minutes (PoSobota #91)
ujovlado
0
380
Non-traditional use of Docker (Nette Camp #3)
ujovlado
0
140
Contributions [lightning talk] (PyconCZ 2015)
ujovlado
0
95
CSS Flexbox (WebElement #35)
ujovlado
0
160
Don't underestimate CSS (WebElement #30)
ujovlado
0
590
Database Migrations in PHP (Posobota #66)
ujovlado
0
130
Other Decks in Programming
See All in Programming
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
160
CSC305 Lecture 03
javiergs
PRO
0
240
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
610
Six and a half ridiculous things to do with Quarkus
hollycummins
0
130
Signals & Resource API in Angular: 3 Effective Rules for Your Architecture @BASTA 2025 in Mainz
manfredsteyer
PRO
0
110
CSC305 Lecture 06
javiergs
PRO
0
210
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
370
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
2
660
Model Pollution
hschwentner
1
190
CSC305 Lecture 01
javiergs
PRO
1
400
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1.2k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
100
Featured
See All Featured
Producing Creativity
orderedlist
PRO
347
40k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
580
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
Designing Experiences People Love
moore
142
24k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Gamification - CAS2011
davidbonilla
81
5.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Why Our Code Smells
bkeepers
PRO
339
57k
The Cult of Friendly URLs
andyhume
79
6.6k
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