Should we use doker?
2017-02-25
fukuitech 7.5
株式会社spice life うなすけ
自己紹介
- うなすけ
- twitter : yu_suke1994
- 株式会社spice life
- インフラ部所属
自己紹介
- うなすけ
- twitter : yu_suke1994
- 株式会社spice life
- インフラ部所属
自己紹介
- うなすけ
- twitter : yu_suke1994
- 株式会社spice life
- インフラ部所属 ←NEW!
Do you use docker?
But, wait.. What is docker?
Q. dockerとは?
- A. 仮想マシンでしょ?
- A. Vagrantみたいなやつ!
- A. 流行ってるだけですぐなくなるよ
Q. dockerとは?
- A. 仮想マシンでしょ?
A. Vagrantみたいなやつ!A. 流行ってるだけですぐなくなるよ
dockerはコンテナ型仮想環境
コンテナの利点
……など
dockerはコンテナ型仮想環境
dockerの利点
- どこに持っていっても動く
- 依存関係をコンテナの中に閉じこめておける
……など
Vagrant(VirtualBox)との違いは?
Vagrant(VirtualBox)との違い
A. 仮想化に対するアプローチの違い
dockerとVagrant
| docker | Vagrant |
ざっくり | OSの核は共有 | OSの中に別のOS |
速度比較 | 速い | 遅い |
dockerは一過性の技術なのか
No
ただし「コンテナ型仮想化」についての話
dockerは一過性の技術なのか
docker自体は競合するプロダクトが存在するので
なくなる可能性もある
しかしコンテナという考え方は廃れない
……と思う事例紹介
TMIXのデザインエディタ
エディタのViewとしてReact.jsを採用しており
SSRのためのNode.jsがdocker container内で動作
事例紹介
STEERSの画像加工・配信
Tシャツ画像のリサイズ、キャッシュ等を行う
サーバーがdocker container内で動作
事例紹介
- unasuke.com
- blog.unasuke.com
- n0h0.com
これらwebページのサーバーが
docker container内で動作
docker導入してどうだったか
僕が関わっているdocker動作環境について
docker導入してどうだったか
開発に関して(Pros)
- 開発環境構築の手間が無くなった
- 本番環境との乖離が激減した
docker導入してどうだったか
開発に関して(Cons)
docker導入してどうだったか
運用に関して(Pros)
- ECSによる管理コストの削減
- 障害発生から1分で復旧
- unasuke.com
- sshでコマンド1つ実行するだけ
docker導入してどうだったか
運用に関して(Cons)
- 既存の運用手法が一部使用不能
- 1回だけ実行したいスクリプトどうする
- 実行環境に入って調査したい
Should we use doker?
タイトル回収
Should we I use doker?
あなたはwebアプリケーション開発をしますか?
Should we I use doker?
あなたはwebアプリケーション開発をしますか?
DB、cache、各種ライブラリ……
バージョンの差異で何が起こるか把握できますか?
Should we I use doker?
あなたはクロスプラットフォームな
ライブラリの開発をしますか?
Should we I use doker?
あなたはクロスプラットフォームな
ライブラリの開発をしますか?
Linuxだけでもdebian、fedora、Gentoo……
各環境を整えるのは手間がかかりますね
Should we I use doker?
あなたはモバイルアプリ開発をしますか?
Should we I use doker?
あなたはモバイルアプリ開発をしますか?
何を仮想化するっていうんだ
Should we I use doker?
あなたはOSネイティブアプリ開発をしますか?
Should we I use doker?
あなたはOSネイティブアプリ開発をしますか?
仮想化する部分はどこですか
Should we I use doker?
あなたは複数人によるチームで開発をしますか?
Should we I use doker?
あなたは複数人によるチームで開発をしますか?
開発者ごとで環境が異なると厄介です
Should we I use doker?
わかってきましたね?
Should we I use doker?
- 複数OSが関わってくる
- 複数のソフトウェアが関わってくる
- 複数の開発者が関わってくる
Should we I use doker?
無理に導入する必要はありません
しかし触ってみるべきでしょう
「なぜ世間でこんなにdockerが流行っているのか?」Should we I use doker?
あなたはwebアプリケーション開発をしますか?
経験者からのアドバイス
あなたはwebアプリケーション開発をしますか?
経験者からのアドバイス
あなたはwebアプリケーション開発をしますか?
12-Factor Appに従いましょう12-Factor Appとdocker
12-Factor Appに従ったアプリケーションは
docker化も容易に行なえる
まとめ
dockerを導入すると……
- 複数OSが関わってくる
- 複数のソフトウェアが関わってくる
- 複数の開発者が関わってくる
開発で力を発揮する
Enjoy your development!l