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エージェント猫を作って社内に放した話 Claude Code × Container Lambda の Slack Bot "DevNeko"
naramomi7
0
240
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
520
Claude Code の Skill で複雑な既存仕様をすっきり整理しよう
yuichirokato
1
290
エージェント開発初心者の僕がエージェントを作った話と今後やりたいこと
thasu0123
0
230
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
640
AWS Infrastructure as Code の新機能 2025 総まとめ 〜SA 4人による怒涛のデモ祭り〜
konokenj
10
3.2k
ご飯食べながらエージェントが開発できる。そう、Agentic Engineeringならね。
yokomachi
1
280
TROCCOで実現するkintone+BigQueryによるオペレーション改善
ssxota
0
130
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.5k
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
1.6k
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
120
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
480
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
230
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
150
30 Presentation Tips
portentint
PRO
1
250
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
140
Fireside Chat
paigeccino
42
3.8k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Tell your own story through comics
letsgokoyo
1
830
Building an army of robots
kneath
306
46k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
The Pragmatic Product Professional
lauravandoore
37
7.2k
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