SlideShare una empresa de Scribd logo
1 de 55
カスタムDocker
イメージ
ハンズオン
2016.04.14
注意
•この資料は『Mobingi x GitHub x はてな ハン
ズオン』でのハンズオンセッション用です。
•pptx変換で一部表示が変
•おトクなプロモコードの案内など、一部削除
しています。
Company
Avatar
Since 2016.03〜
App Platform
Build
& Automation
Works
Chef / OpsWorks etc…
@sawanoboly
About me
ハンズオン概要
•カスタムイメージ解説
•phoenixフレームワーク
(Elixir)のアプリケーション
デプロイ
事前準備、
リソース案内
ログインOK?
github repos
※2つ開いて
いただきます
このページを開いて
github repo x2
mocloud-phoenix(Docker)
phoenix-todo(アプリ)
事前準備は以上です
•Dashboard login OK ?
•Repos OK?
•mocloud-phoenix
•phoenix-todo
デプロイ前に
すこし解説
Docker+Code
EC2インスタンス(mocloud管轄)
•アプリケーション本体
•固有処理など
•言語ランタイム
•F/W 共通処理など
mocloud用Dockerイメージ
※mocloud-phoenixのDockerfile等を参照
file:config コード配置などの設定。
file:container_status
起動完了などの指示。スク
リプト内で都度書き込む
startup.log ダッシュボード用ログ。
TCP/80(,443) これらが公開されます。
環境変数 mocloudからも渡せます。
アプリケーション追加タスク
•事前処理:mobingi-install.sh
ここから
ハンズオン
mocloud
ダッシュボードへどうぞ
[2 Steps]
1. Create App
2. Deploy Code
Step: Create App
•アプリケーション作成
•Tokyo, Type 1を選択
•Dockerレジストリから
イメージ選択
左のメニューから作成
[東京リージョン]
[タイプ1サーバー]を選択
イメージ設定
sawanoboly/mocloud-phoenix
作成!
Step: Deploy Code
•Code登録
•URLをコピーする
•貼り付ける
phenix-todoから
URLをコピー
作成したアプリ画面へ
コード=> Other Git Host
(余談)Phoenixについて
•Webアプリケーションフレーム
ワークです。Railsとかそれ系。
•詳細は割愛。
次:ログで
様子を確認
moDaemon(Agent)ログ
EC2インスタンス内部の処理
Startupログに切り替えます
Dockerに仕込んだF/W処理等
デプロイ完了
アプリの
URLは?
ここです
表示できましたか?
ハンズオン
ここまで
メトリクス
※生デモ
監視タブ
& Mackerel
※生デモ
応用編
コンテナに
ssh loginする
設定から公開鍵を関連付け
ユーザ名=公開鍵の名前
コンテナ内で
•タスクを実行する
•コードの変更
•アプリのリスタート(※)
※supervisor経由等にして、コン
テナが終了しないように
Github連携
とAPI
Githubと接続する
要はpushイベントを
mobingiに通知しています
Deploy !
Pull Request
Test
Merge
CIとHookの例
Kick!
APIもあります
Deploy !
Pushed!
Test
CIからAPI
API Call
DBの
スナップショット
からアプリ作成
次回ハンズオン?
END

Más contenido relacionado

La actualidad más candente

TravisCI Nightに行ってきたので情報展開
TravisCI Nightに行ってきたので情報展開TravisCI Nightに行ってきたので情報展開
TravisCI Nightに行ってきたので情報展開
Makoto Abe
 

La actualidad más candente (20)

Tekton 入門
Tekton 入門Tekton 入門
Tekton 入門
 
JBoss EAP for OpenShift
JBoss EAP for OpenShiftJBoss EAP for OpenShift
JBoss EAP for OpenShift
 
Fn project爆誕
Fn project爆誕Fn project爆誕
Fn project爆誕
 
コマンド一発でLibreOfficeをインストール
コマンド一発でLibreOfficeをインストールコマンド一発でLibreOfficeをインストール
コマンド一発でLibreOfficeをインストール
 
Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系Webブラウザで使えるいろんな処理系
Webブラウザで使えるいろんな処理系
 
TravisCI Nightに行ってきたので情報展開
TravisCI Nightに行ってきたので情報展開TravisCI Nightに行ってきたので情報展開
TravisCI Nightに行ってきたので情報展開
 
20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide20160730 fluentd meetup in matsue slide
20160730 fluentd meetup in matsue slide
 
Webフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapyWebフレームワークを作ってる話 #osakapy
Webフレームワークを作ってる話 #osakapy
 
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMSDrupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
 
さらばデスクトップ?モバイル・クラウド時代のLibreOfficeの挑戦/LibreOffice current status, or the chall...
さらばデスクトップ?モバイル・クラウド時代のLibreOfficeの挑戦/LibreOffice current status, or the chall...さらばデスクトップ?モバイル・クラウド時代のLibreOfficeの挑戦/LibreOffice current status, or the chall...
さらばデスクトップ?モバイル・クラウド時代のLibreOfficeの挑戦/LibreOffice current status, or the chall...
 
INF-015_そこのコンテナ、うまく積めてるね! ~Windows アプリケーション コンテナの展開と運用~
INF-015_そこのコンテナ、うまく積めてるね! ~Windows アプリケーション コンテナの展開と運用~INF-015_そこのコンテナ、うまく積めてるね! ~Windows アプリケーション コンテナの展開と運用~
INF-015_そこのコンテナ、うまく積めてるね! ~Windows アプリケーション コンテナの展開と運用~
 
GitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェアGitHubで見つかるFileMaker関連ソフトウェア
GitHubで見つかるFileMaker関連ソフトウェア
 
FuelPHP活用事例
FuelPHP活用事例FuelPHP活用事例
FuelPHP活用事例
 
PHPのライブラリをcomposer経由で公開した話
PHPのライブラリをcomposer経由で公開した話PHPのライブラリをcomposer経由で公開した話
PHPのライブラリをcomposer経由で公開した話
 
ProjectAtomic-and-geard
ProjectAtomic-and-geardProjectAtomic-and-geard
ProjectAtomic-and-geard
 
Composer
 Composer Composer
Composer
 
Robot Framework (のSelenium2Libraryのお話)
Robot Framework (のSelenium2Libraryのお話)Robot Framework (のSelenium2Libraryのお話)
Robot Framework (のSelenium2Libraryのお話)
 
恋に落ちるデプロイツール
恋に落ちるデプロイツール恋に落ちるデプロイツール
恋に落ちるデプロイツール
 
開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた
 
PHPデプロイツールの世界
PHPデプロイツールの世界PHPデプロイツールの世界
PHPデプロイツールの世界
 

Destacado

ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会
ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会
ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会
Takayuki Shimizukawa
 

Destacado (20)

moCloudハンズオン[ベーシック]
moCloudハンズオン[ベーシック]moCloudハンズオン[ベーシック]
moCloudハンズオン[ベーシック]
 
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpecマニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
マニアックツール紹介、マネジメントのKnife-Zero(Chef)とテストスイートInSpec
 
JAWSUG初心者向けトラック 【Deploy&Ops】
JAWSUG初心者向けトラック 【Deploy&Ops】JAWSUG初心者向けトラック 【Deploy&Ops】
JAWSUG初心者向けトラック 【Deploy&Ops】
 
さくらのクラウドフォーメーション with Chef [XEgg session]
さくらのクラウドフォーメーション with Chef [XEgg session]さくらのクラウドフォーメーション with Chef [XEgg session]
さくらのクラウドフォーメーション with Chef [XEgg session]
 
Chef Casual Talks 出張版京セラドーム公演 (JAWS FESTA Kansai 2013内イベント)
Chef Casual Talks 出張版京セラドーム公演 (JAWS FESTA Kansai 2013内イベント)Chef Casual Talks 出張版京セラドーム公演 (JAWS FESTA Kansai 2013内イベント)
Chef Casual Talks 出張版京セラドーム公演 (JAWS FESTA Kansai 2013内イベント)
 
Aws OpsWorks [JAWSDAYS 2014 ACEに聞けトラック]
Aws OpsWorks [JAWSDAYS 2014 ACEに聞けトラック]Aws OpsWorks [JAWSDAYS 2014 ACEに聞けトラック]
Aws OpsWorks [JAWSDAYS 2014 ACEに聞けトラック]
 
Chef_Casual_Talks_Kansai_Vol1_Infrastructure_as_Code
Chef_Casual_Talks_Kansai_Vol1_Infrastructure_as_CodeChef_Casual_Talks_Kansai_Vol1_Infrastructure_as_Code
Chef_Casual_Talks_Kansai_Vol1_Infrastructure_as_Code
 
Building document with the Sphinx public edtion
Building document with the Sphinx public edtionBuilding document with the Sphinx public edtion
Building document with the Sphinx public edtion
 
aws_opsworks
aws_opsworksaws_opsworks
aws_opsworks
 
コンテナ事例 CircleCI, Cucumber-Chef
コンテナ事例 CircleCI, Cucumber-Chefコンテナ事例 CircleCI, Cucumber-Chef
コンテナ事例 CircleCI, Cucumber-Chef
 
Infrastructure as Codeと 組織のドキュメンテーション + Immutable Infrastructure事例
Infrastructure as Codeと 組織のドキュメンテーション + Immutable Infrastructure事例Infrastructure as Codeと 組織のドキュメンテーション + Immutable Infrastructure事例
Infrastructure as Codeと 組織のドキュメンテーション + Immutable Infrastructure事例
 
MarketPlaceのAMIをPackerで作る時、 Chefは3度配膳する
MarketPlaceのAMIをPackerで作る時、 Chefは3度配膳するMarketPlaceのAMIをPackerで作る時、 Chefは3度配膳する
MarketPlaceのAMIをPackerで作る時、 Chefは3度配膳する
 
Chef meetup vol2_higanwoks
Chef meetup vol2_higanwoksChef meetup vol2_higanwoks
Chef meetup vol2_higanwoks
 
2014年のChefとInfrastructure as code
2014年のChefとInfrastructure as code2014年のChefとInfrastructure as code
2014年のChefとInfrastructure as code
 
さくらのインフラコード
さくらのインフラコードさくらのインフラコード
さくらのインフラコード
 
仮想マシンざっくり解説と実践Vagrant | StaticPress × S3 × Vagrant 勉強会
仮想マシンざっくり解説と実践Vagrant | StaticPress × S3 × Vagrant 勉強会仮想マシンざっくり解説と実践Vagrant | StaticPress × S3 × Vagrant 勉強会
仮想マシンざっくり解説と実践Vagrant | StaticPress × S3 × Vagrant 勉強会
 
はかどるChefの小ネタ集
はかどるChefの小ネタ集はかどるChefの小ネタ集
はかどるChefの小ネタ集
 
[LT] インフラの人がChefやServerspec(ほか)が Rubyだったおかげですこし プログラムをするようになった話
[LT] インフラの人がChefやServerspec(ほか)が Rubyだったおかげですこし プログラムをするようになった話[LT] インフラの人がChefやServerspec(ほか)が Rubyだったおかげですこし プログラムをするようになった話
[LT] インフラの人がChefやServerspec(ほか)が Rubyだったおかげですこし プログラムをするようになった話
 
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
DevOpsのアプローチと クラウド/バーチャル環境/構成管理ツール のお話
 
ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会
ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会
ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会
 

Similar a mocloud カスタムDockerイメージ ハンズオン

2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)
Naoki Okino
 
Firefox 4 and Mobile
Firefox 4 and MobileFirefox 4 and Mobile
Firefox 4 and Mobile
Makoto Kato
 
Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」
Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」
Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」
Noritada Shimizu
 
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
ericsagnes
 
論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10
Noritada Shimizu
 
KEONとPEAKが無くてもFirefox OS開発出来る
KEONとPEAKが無くてもFirefox OS開発出来るKEONとPEAKが無くてもFirefox OS開発出来る
KEONとPEAKが無くてもFirefox OS開発出来る
android sola
 

Similar a mocloud カスタムDockerイメージ ハンズオン (20)

JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
 
2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)2012 0623-x-road-tokyo-xoops-x(ten)
2012 0623-x-road-tokyo-xoops-x(ten)
 
LibreOfficeをビルドしてみよう(Windows)
LibreOfficeをビルドしてみよう(Windows)LibreOfficeをビルドしてみよう(Windows)
LibreOfficeをビルドしてみよう(Windows)
 
remote Docker over SSHが熱い
remote Docker over SSHが熱いremote Docker over SSHが熱い
remote Docker over SSHが熱い
 
Firefox 4 and Mobile
Firefox 4 and MobileFirefox 4 and Mobile
Firefox 4 and Mobile
 
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけねGitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
GitHubのリポジトリ(32個)を 覗いてみよう。 ただし、READMEだけね
 
Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」
Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」
Firefox OS 勉強会 名古屋2nd 「便利な便利な開発ツール」
 
Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編
Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編
Xamarin 概要 @ 2014/11/08 第2回 Japan Xamarin User Group Conference 西日本編
 
ソフトウェア工学2023 13 ドキュメンテーション
ソフトウェア工学2023 13 ドキュメンテーションソフトウェア工学2023 13 ドキュメンテーション
ソフトウェア工学2023 13 ドキュメンテーション
 
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
 
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
 
Voicepic@FukuiMASeminar
Voicepic@FukuiMASeminarVoicepic@FukuiMASeminar
Voicepic@FukuiMASeminar
 
PHPにおけるRIA事情と開発
PHPにおけるRIA事情と開発PHPにおけるRIA事情と開発
PHPにおけるRIA事情と開発
 
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
 
論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10論理思考とプログラミング 2013f#10
論理思考とプログラミング 2013f#10
 
KEONとPEAKが無くてもFirefox OS開発出来る
KEONとPEAKが無くてもFirefox OS開発出来るKEONとPEAKが無くてもFirefox OS開発出来る
KEONとPEAKが無くてもFirefox OS開発出来る
 
"Continuous Publication" with Python: Another Approach
"Continuous Publication" with Python: Another Approach"Continuous Publication" with Python: Another Approach
"Continuous Publication" with Python: Another Approach
 
20161027 hadoop summit Generating Recommendations at Amazon Scale with Apach...
20161027 hadoop summit  Generating Recommendations at Amazon Scale with Apach...20161027 hadoop summit  Generating Recommendations at Amazon Scale with Apach...
20161027 hadoop summit Generating Recommendations at Amazon Scale with Apach...
 
Xcode4 project template (slide)
Xcode4 project template (slide)Xcode4 project template (slide)
Xcode4 project template (slide)
 
Hashicorpツールズ
HashicorpツールズHashicorpツールズ
Hashicorpツールズ
 

Más de Yukihiko SAWANOBORI

Physical to Iaas(Instance), case of VIP.
Physical to Iaas(Instance), case of VIP.Physical to Iaas(Instance), case of VIP.
Physical to Iaas(Instance), case of VIP.
Yukihiko SAWANOBORI
 

Más de Yukihiko SAWANOBORI (12)

Chef(Server)と AWS OpsWorks(tm)の比較
Chef(Server)と AWS OpsWorks(tm)の比較Chef(Server)と AWS OpsWorks(tm)の比較
Chef(Server)と AWS OpsWorks(tm)の比較
 
What is chef
What is chefWhat is chef
What is chef
 
CentOSでつくる神Plesk
CentOSでつくる神PleskCentOSでつくる神Plesk
CentOSでつくる神Plesk
 
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
密着! nibohsiデプロイ 13:00-13:05 - railsアプリのデプロイ事例 -
 
Lxc on cloud
Lxc on cloudLxc on cloud
Lxc on cloud
 
The Chef integrations Z Cloud(Joyent)
The Chef integrations Z Cloud(Joyent)The Chef integrations Z Cloud(Joyent)
The Chef integrations Z Cloud(Joyent)
 
Physical to Iaas(Instance), case of VIP.
Physical to Iaas(Instance), case of VIP.Physical to Iaas(Instance), case of VIP.
Physical to Iaas(Instance), case of VIP.
 
Redmine backlogs beginning
Redmine backlogs beginningRedmine backlogs beginning
Redmine backlogs beginning
 
Aws glacier
Aws glacierAws glacier
Aws glacier
 
0808 jawsug-kobe | スポットインスタンスを使った EC2でのスケーラブル負荷検証
0808 jawsug-kobe | スポットインスタンスを使ったEC2でのスケーラブル負荷検証0808 jawsug-kobe | スポットインスタンスを使ったEC2でのスケーラブル負荷検証
0808 jawsug-kobe | スポットインスタンスを使った EC2でのスケーラブル負荷検証
 
Sensu impression
Sensu impressionSensu impression
Sensu impression
 
cURL base_simple_publishing - part of Giraffi
cURL base_simple_publishing - part of GirafficURL base_simple_publishing - part of Giraffi
cURL base_simple_publishing - part of Giraffi
 

mocloud カスタムDockerイメージ ハンズオン

Notas del editor

  1. To me > - μblockを切っておけ。 - Githubを開いておけ。 - マカレルを開いておけ。
  2. ログイン完了を待とう。 『ブラウザのタブをキープしておいてください』
  3. 全員が開いたことを確認してから次。 DoorKeeper 『Mobingi x はてな などで検索』
  4. 『ブラウザのタブをキープしておいてください』
  5. 『ブラウザのタブをキープしておいてください』
  6. 『吉田さんが解説済だと思いますが〜』 Dockerイメージに少しコツがいります。
  7. 『詳しくはドキュメントがあるので、そちらを参照』
  8. 待ってくれという人がいないか確認する。
  9. 待ってくれという人がいないか確認する。
  10. 『作成後、気持ち早めにコードの登録します。』
  11. ここで、失敗になってる人いませんか?
  12. (空気次第で)『Elixir知ってる人〜』
  13. ここからは吉田さんのぶんと同様です
  14. 実際自動なので、やることないです。
  15. デプロイ完了していない人を待とう。
  16. 続いて、他の機能や応用編をサラッと紹介します。
  17. ブラウザで、自分の既存アプリを開いてあげる
  18. 時間調整、カット可。ざっくり説明。
  19. ちょっと発展した版です。
  20. ここは吉田さんが説明してくれた通りです。