Slide 1

Slide 1 text

Docker Compose で Wordpress を Deploy してみよう ハンズオン 2016.04.07 FUKUOKA DevOps勉強会 #2 Dockerを使ったCI/CD かっぱ(@inokara)

Slide 2

Slide 2 text

提供

Slide 3

Slide 3 text

アジア地域4社 世界28社 最上位パートナー プレミアコンサルティングパートナー これは cloudpack の CM です

Slide 4

Slide 4 text

これは cloudpack の CM です

Slide 5

Slide 5 text

これは cloudpack の CM です

Slide 6

Slide 6 text

これは cloudpack の CM です

Slide 7

Slide 7 text

これは cloudpack の CM です

Slide 8

Slide 8 text

アジェンダ ☁ ハンズオン資料 ☁ 注意 ☁ ⾃⼰紹介 ☁ 今⽇のハンズオン ☁ 5 分で解る(かもしれない)Docker Compose ☁ レッツハンズオン!

Slide 9

Slide 9 text

ハンズオン資料の紹介 ☁ 体育会系 Docker Compose ハンズオン資料 (1)→ http://qiita.com/inokappa/private/ 14f731d383d266255961 ☁ 体育会系 Docker Compose ハンズオン資料 (2)→ http://qiita.com/inokappa/private/ e5388726ee80ce24f633

Slide 10

Slide 10 text

注意 ☁ ハンズオン上の注意点についてはハンズオン資料 内の注意点をご覧下さい ☁ ハンズオンの時間は 60 分程度を想定しておりま すが、物⾜りない⽅は資料を参考にサクサク進め て頂いて構いません

Slide 11

Slide 11 text

⾃⼰紹介 ☁ 川原洋平(@inokara) ☁ 「かっぱ」とお気軽にお声がけ下さい ☁ 初⽼丸(40 歳) ☁ アイレット株式会社 cloudpack 事業部所属 ☁ ⾹椎からリモート勤務(もうすぐ 2 年⽬) ☁ 好きなショッピングモール:イオンモール⾹椎浜

Slide 12

Slide 12 text

今⽇の ハンズオン

Slide 13

Slide 13 text

Docker Compose を使って WordPress 環境をサクッと構築する

Slide 14

Slide 14 text

ハンズオンの流れ ☁ ちょっとした座学(イマココ) ☁ Docker エンジンのインストール ☁ docker run してみる ☁ Dockerfile でコンテナイメージをビルドしてみる ☁ ビルドしたイメージから docker run してみる ☁ Docker Compose のインストール

Slide 15

Slide 15 text

5 分で解る(かもしれない) Docker Compose

Slide 16

Slide 16 text

先ほどの前佛さんのお話で Docker Compose を使えば インフラ環境を作成することが出来る

Slide 17

Slide 17 text

ということが解りました(よね?)

Slide 18

Slide 18 text

そして、コードでインフラが構築出来る というイメージが湧いてきた気がします

Slide 19

Slide 19 text

じゃあ

Slide 20

Slide 20 text

Docker を使って Web アプリケーションシステムを 構築してみようと思います

Slide 21

Slide 21 text

超シンプルな Web アプリケーションシステム(よくある編)

Slide 22

Slide 22 text

超シンプルな Web アプリケーションシステム(Docker 編)

Slide 23

Slide 23 text

各コンテナを個別に管理するのは⾯倒…

Slide 24

Slide 24 text

ですよね?

Slide 25

Slide 25 text

各コンテナの依存関係や コマンドの実⾏等もコードで定義したい

Slide 26

Slide 26 text

ですよね?

Slide 27

Slide 27 text

そこで…

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

Docker Compose とは ☁ 複数のコンテナを管理出来る Docker 社謹製のツール ☁ 以前は fig という名前で提供されていた ☁ Go で書かれており、ワンバイナリで提供されている ☁ docker-compose コマンドを実⾏するだけで複数のコ ンテナの起動と停⽌等を管理することが出来る ☁ 起動するコンテナのイメージ、コマンド、ポート、ボ リューム等設定を YAML ファイルで管理出来る

Slide 30

Slide 30 text

Docker Compose のイメージ(1)

Slide 31

Slide 31 text

Docker Compose のイメージ(2)

Slide 32

Slide 32 text

docker-compose.yml vs docker コマンド

Slide 33

Slide 33 text

ということで…

Slide 34

Slide 34 text

Docker Compose のざっくりイメージは 掴んで頂けましたでしょうか…

Slide 35

Slide 35 text

もう少しだけ...

Slide 36

Slide 36 text

個⼈的に抑えておきたい Docker の便利機能 ☁ コンテナ間のリンク機能 ☁ データ専⽤コンテナ

Slide 37

Slide 37 text

個⼈的に抑えておきたい Docker の便利機能 ☁ コンテナ間のリンク機能 ☁ 起動したコンテナと連携したい別のコンテナに対して、ポート番号や IP アドレスを環境変数として利⽤出来る機能 ☁ 以下のようにコンテナを起動することでリンク機能を利⽤出来る # σʔλϕʔείϯςφͷىಈ docker run --name mysql mysql # σʔλϕʔείϯςφʹ઀ଓ͢ΔΞϓϦέʔγϣϯίϯςφΛىಈ docker run --link mysql:db app /app/start.sh ※ Docker Compose の場合には v2 で depends_on が同等 + アルファの機能が提供されているのでお薦めかも

Slide 38

Slide 38 text

個⼈的に抑えておきたい Docker の便利機能 ☁ コンテナ間のリンク機能

Slide 39

Slide 39 text

個⼈的に抑えておきたい Docker の便利機能 ☁ データ専⽤コンテナ ☁ コンテナのデータを保存する為だけに作成されるコンテナ ☁ データ専⽤コンテナは以下のように起動して、他のコンテナからマウ ント(接続)してデータを保存する # σʔλઐ༻ίϯςφΛ࡞੒ docker create --name storage --volume /var/lib/mysql busybox # σʔλઐ༻ίϯςφΛར༻͢ΔσʔλϕʔεαʔόʔΛىಈ docker run -d \ —name database --volumes-from storage -e MYSQL_ROOT_PASSWORD=mysql mysql

Slide 40

Slide 40 text

個⼈的に抑えておきたい Docker の便利機能 ☁ データ専⽤コンテナ

Slide 41

Slide 41 text

そろそろいきますよ…

Slide 42

Slide 42 text

参考 URL ☁ 以下のドキュメントを参考にさせて頂きました Docker ドキュメント⽇本語化プロジェクト http://docs.docker.jp/

Slide 43

Slide 43 text

参考書籍 ☁ 以下の書籍を参考にさせて頂きました プログラマのための Docker 教科書 インフラの基礎知識&コードによる環境構築の⾃動化

Slide 44

Slide 44 text

準備はいいですかー!?

Slide 45

Slide 45 text

レッツ ハンズオン!

Slide 46

Slide 46 text

提供

Slide 47

Slide 47 text

No content