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
190
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
150
Design a REST API you will love to work with
ujovlado
0
780
Docker for PHP developers - Tips, Tricks & Lessons learned
ujovlado
3
510
Docker ‐ from development to production in minutes (PoSobota #91)
ujovlado
0
400
Non-traditional use of Docker (Nette Camp #3)
ujovlado
0
170
Contributions [lightning talk] (PyconCZ 2015)
ujovlado
0
120
CSS Flexbox (WebElement #35)
ujovlado
0
190
Don't underestimate CSS (WebElement #30)
ujovlado
0
620
Database Migrations in PHP (Posobota #66)
ujovlado
0
150
Other Decks in Programming
See All in Programming
AIに仕事を丸投げしたら、本当に楽になれるのか
dip_tech
PRO
0
180
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
400
Codex の「自走力」を高める
yorifuji
0
250
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.5k
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
310
AI活用のコスパを最大化する方法
ochtum
0
120
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
130
浮動小数の比較について
kishikawakatsumi
0
380
NOT A HOTEL - 建築や人と融合し、自由を創り出すソフトウェア
not_a_hokuts
2
560
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
150
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
380
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
480
Featured
See All Featured
The Spectacular Lies of Maps
axbom
PRO
1
580
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Accessibility Awareness
sabderemane
0
73
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
190
We Are The Robots
honzajavorek
0
190
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
470
Odyssey Design
rkendrick25
PRO
2
530
Practical Orchestrator
shlominoach
191
11k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
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