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
Docker meets AWS OpsWorks
Search
takipone
April 11, 2014
Technology
4
2.8k
Docker meets AWS OpsWorks
Docker Meetup Tokyo #2でお話する(した)スライドです。
takipone
April 11, 2014
Tweet
Share
More Decks by takipone
See All by takipone
ロールプレイトレーニングでクラウドエンジニアを短期育成した知見を一挙公開 / roll playing training benefits and cases
takipone
0
510
スキル育成に生かすLlamaIndexの活用 /using-llamaIndex-to-enhance-ones-skills
takipone
1
3.2k
DNSにちょっとだけ詳しくなりたい人に贈る少し突っ込んだDNSの話 / devioday1_dns
takipone
2
10k
Amazon VPC Latticeに期待する / look-for-vpc-lattice
takipone
0
1.1k
DevelopersIOのアウトプット文化をハックして人材育成に繋げる話 /deviosapporo2022fall_takipone
takipone
0
910
AWSネットワークリソースをサービスでマルチテナントに 提供するときのスケーラビリティ / nwjaws202112-takipone
takipone
1
700
ネットワークがクラウドに載って変わることと変わらないこと /nwjaws201909-takipone
takipone
0
2k
AWSネイティブなEC/CRMシステム運用に欠かせないログ基盤構築 / cmdevio2018-aws-log-infra
takipone
7
3k
日本🇯🇵でAWS Direct Connect を利用する話/akiba-aws-dx
takipone
1
2.4k
Other Decks in Technology
See All in Technology
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
560
NFV基盤のOpenStack更新 ~9世代バージョンアップへの挑戦~
vtj
0
340
Amazon Aurora のバージョンアップ手法について
smt7174
2
130
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
27
15k
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
130
RemoveだらけのPHPUnit 12に備えよう
cocoeyes02
0
240
クラウドサービス事業者におけるOSS
tagomoris
4
990
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
2.4k
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
540
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
900
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
150
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
180
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Designing for Performance
lara
604
68k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
RailsConf 2023
tenderlove
29
1k
Side Projects
sachag
452
42k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
250
The Pragmatic Product Professional
lauravandoore
32
6.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
A designer walks into a library…
pauljervisheath
205
24k
Transcript
Docker meets AWS OpsWorks Docker Meetup Tokyo #2 classmethod.jp
1 2014/04/11 クラスメソッド株式会社 ⼤大瀧隆太 #dockerjp
classmethod.jp 2 ⾃自⼰己紹介 • ⽒氏名 : ⼤大瀧隆太 @takipone • ポジション
: AWSコンサル部 エンジニア / 研修講師 • 得意分野 : ネットワーク / デプロイツール • 好きなAWSサービス Amazon Route 53 classmethod.jp 2
classmethod.jp 3 会社の紹介 AWSとiPhoneアプリの ブログの会社です。 http://dev.classmethod.jp/
Dockerコンテナでのアプリデプロイ • SSHでDockerホストにログイン • Dockerfileに “ADD /src /docroot” を記述 •
docker build . • docker run classmethod.jp 4 本番環境では、誰が実⾏行行するべき? →デプロイフレームワークが欲しい!
classmethod.jp 5 AWSのデプロイサービス http://aws.amazon.com/application-‐‑‒management/ 今回はコレ!
AWS OpsWorksとは • AWSのデプロイサービスはEC2や他のサービ スとの連携、アプリケーションコードのデプ ロイなどの⾯面倒を⾒見見てくれる。 • OpsWorksはChef(chef-‐‑‒solo)をプロビジョニ ング基盤にしているため、Chefの知識識があれ ば詳細なカスタマイズが可能!
classmethod.jp 6 参考 • https://aws.amazon.com/jp/opsworks/ • http://www.slideshare.net/ AmazonWebServicesJapan/ops-‐‑‒ worksintroduction-‐‑‒20130625
OpsWorksのCookbookリポジトリ • https://github.com/aws/opsworks-‐‑‒cookbooks classmethod.jp 7 • 最近BerkShelfに対応したので、Opscodeの コミュニティCookbookが導⼊入しやすくなりました!
OpsWorksのCookbookリポジトリ classmethod.jp 8 • Chefだと... と、naoya_̲itoさんに怒怒られそう。 • OpsWorksのRecipeでは、結構ざっくり executeリソースを多⽤用している模様。 (多分冪等性の検証はしていると思いますが)
冪等性を確保せよ!
OpsWorksのCookbookリポジトリ classmethod.jp 9 • DockerはImmutableな使い⽅方をしたいとこ ろなので、Chefの冪等性にとらわれず くらいカジュアルに使う⽅方がシアワセになれ ると思います。 “DevOps Automation”
Amazonさんが無償で⽤用意してくれる スクリプトに⽑毛が⽣生えたサービス
OpsWorksのライフサイクルイベント classmethod.jp 10 ※ 後⽚片付けのためのUndeploy, Shutdownイベントもあります。 Setupイベント :
OS/ミドルウェアのインストール Configureイベント : OS/ミドルウェアの構成 Deployイベント : アプリケーションコードの配置 package/serviceリソース template/fileリソース & notify template/fileリソース & notify 任意のChef Recipe をキックできる
OpsWorksのライフサイクルイベント classmethod.jp 11 ※ 後⽚片付けのためのUndeploy, Shutdownイベントもあります。 Setupイベント :
OS/ミドルウェアのインストール Configureイベント : OS/ミドルウェアの構成 Deployイベント : アプリケーションコードの配置 package/serviceリソース template/fileリソース & notify template/fileリソース & notify Dockerインストール/アップデート 基本コンテナイメージの取得 アプリのデプロイ、コンテナ起動
出来そう! classmethod.jp 12
と思ったら。。。 classmethod.jp 13
classmethod.jp 14 まんまのブログがあった! http://jaredmarkell.com/ deploying-‐‑‒docker-‐‑‒with-‐‑‒opsworks/
classmethod.jp 15 試してみました。(スタックの設定) コンテナごとに Dockerイメージを指定
classmethod.jp 16 試してみました。(レイヤーの設定)
classmethod.jp 17 SSHで⼊入るとこんな感じ。 コンテナできてます!
今後の展望 • コンテナ数や構成が固定なので、変更更できる ような仕組みを。 • docker run/rmしか使っていないので、 Dockerぽいオペレーションを組み⼊入れたい。 • execリソースじゃない、かっこいいレシピの
ためにchef-‐‑‒docker Cookbookを利利⽤用したい。 – https://github.com/bflad/chef-‐‑‒docker • 随時ブログでアウトプットしていきます! classmethod.jp 18
まとめ • Dockerコンテナのデプロイは、いくらでもや りようはあるけど、有りものを使うのが楽。 • AWS OpsWorksはChefを使うので敷居が⾼高 そうに⾒見見えるかもしれないけど、カスタマイ ズが効くし、以外と簡単に使えます。 classmethod.jp
19
classmethod.jp 20 • ありがとうございました!