mocloud カスタムdockerイメージ ハンズオン
TRANSCRIPT
![Page 1: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/1.jpg)
カスタム Dockerイメージハンズオン2016.04.14
![Page 2: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/2.jpg)
注意•この資料は『 Mobingi x GitHub x はてな ハンズオン』でのハンズオンセッション用です。•pptx 変換で一部表示が変
•おトクなプロモコードの案内など、一部削除しています。
![Page 3: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/3.jpg)
Company
Avatar
Since 2016.03 〜
App PlatformBuild
& Automation
WorksChef / OpsWorks etc…
@sawanobolyAbout me
![Page 4: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/4.jpg)
ハンズオン概要•カスタムイメージ解説•phoenix フレームワーク(Elixir) のアプリケーションデプロイ
![Page 5: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/5.jpg)
事前準備、リソース案内
![Page 6: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/6.jpg)
ログイン OK ?
![Page 7: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/7.jpg)
github repos※2 つ開いていただきます
![Page 8: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/8.jpg)
このページを開いて
![Page 9: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/9.jpg)
github repo x2
![Page 10: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/10.jpg)
mocloud-phoenix(Docker)
![Page 11: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/11.jpg)
phoenix-todo( アプリ )
![Page 12: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/12.jpg)
事前準備は以上です•Dashboard login OK ?•Repos OK?• mocloud-phoenix• phoenix-todo
![Page 13: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/13.jpg)
デプロイ前にすこし解説
![Page 14: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/14.jpg)
Docker+Code
EC2 インスタンス (mocloud 管轄 )
•アプリケーション本体•固有処理など•言語ランタイム•F/W 共通処理など
![Page 15: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/15.jpg)
mocloud 用 Docker イメージ※mocloud-phoenix の Dockerfile 等を参
照file:config コード配置などの設定。
file:container_status
起動完了などの指示。スクリプト内で都度書き込む
startup.log ダッシュボード用ログ。TCP/80(,443) これらが公開されます。
環境変数 mocloud からも渡せます。
![Page 16: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/16.jpg)
アプリケーション追加タスク•事前処理 :mobingi-install.sh
![Page 17: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/17.jpg)
ここからハンズオン
![Page 18: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/18.jpg)
mocloudダッシュボードへどうぞ
![Page 19: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/19.jpg)
[2 Steps]1. Create App
2. Deploy Code
![Page 20: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/20.jpg)
Step: Create App•アプリケーション作成• Tokyo, Type 1 を選択• Docker レジストリからイメージ選択
![Page 21: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/21.jpg)
左のメニューから作成
![Page 22: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/22.jpg)
[ 東京リージョン ][ タイプ 1 サーバー ] を選択
![Page 23: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/23.jpg)
イメージ設定sawanoboly/mocloud-
phoenix
![Page 24: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/24.jpg)
作成!
![Page 25: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/25.jpg)
Step: Deploy Code
•Code 登録• URL をコピーする• 貼り付ける
![Page 26: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/26.jpg)
phenix-todo からURL をコピー
![Page 27: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/27.jpg)
作成したアプリ画面へ
![Page 28: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/28.jpg)
コード => Other Git Host
![Page 29: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/29.jpg)
( 余談 )Phoenix について•Web アプリケーションフレームワークです。 Rails とかそれ系。•詳細は割愛。
![Page 30: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/30.jpg)
次:ログで様子を確認
![Page 31: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/31.jpg)
moDaemon(Agent) ログ
![Page 32: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/32.jpg)
EC2 インスタンス内部の処理
![Page 33: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/33.jpg)
Startup ログに切り替えます
![Page 34: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/34.jpg)
Docker に仕込んだ F/W 処理等
![Page 35: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/35.jpg)
デプロイ完了
![Page 36: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/36.jpg)
アプリのURL は?
![Page 37: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/37.jpg)
ここです
![Page 38: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/38.jpg)
表示できましたか?
![Page 39: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/39.jpg)
ハンズオンここまで
![Page 40: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/40.jpg)
メトリクス※ 生デモ
![Page 41: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/41.jpg)
監視タブ& Mackerel
※ 生デモ
![Page 42: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/42.jpg)
応用編
![Page 43: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/43.jpg)
コンテナにssh login する
![Page 44: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/44.jpg)
設定から公開鍵を関連付け
![Page 45: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/45.jpg)
ユーザ名 = 公開鍵の名前
![Page 46: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/46.jpg)
コンテナ内で•タスクを実行する•コードの変更• アプリのリスタート (※)
※supervisor 経由等にして、コンテナが終了しないように
![Page 47: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/47.jpg)
Github 連携と API
![Page 48: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/48.jpg)
Github と接続する
![Page 49: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/49.jpg)
要は push イベントをmobingi に通知しています
![Page 50: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/50.jpg)
Deploy !
Pull Request
Test
Merge
CI と Hook の例
Kick!
![Page 51: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/51.jpg)
API もあります
![Page 52: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/52.jpg)
Deploy !
Pushed!
Test
CI から API
API Call
![Page 53: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/53.jpg)
DB のスナップショットからアプリ作成
![Page 54: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/54.jpg)
次回ハンズオン?
![Page 55: mocloud カスタムDockerイメージ ハンズオン](https://reader035.vdocuments.mx/reader035/viewer/2022062316/5878d93b1a28ab917a8b6b4f/html5/thumbnails/55.jpg)
END