Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
(C)Copyright 1996-2014 SAKURA Internet Inc.
さくらインターネット
横田真俊(@wslash)
2016/05/14
2
氏名
横田真俊(@Wslash)
「さくらのクラウド」の企画担当 兼
エバンジェリストをやっております
年に50回程度の講演・ハンズオンを
行っております
左のアイコンで、ツイッターを
やっていますのでお気軽に
お声がけください
3
Amazon EC2/S3 入門
今は、さくらのクラウド企画担当
をやっていますが、昔はこんな本
を書いていました
4
ツイッターやFacebookなど
ソーシャルメディアの本
を5冊ほど書いてます
Dockerを利用すると
コマンド一発で色々なソフトの
検証ができるよ!
5
(C)Copyright 1996-2014 SAKURA Internet Inc.
7
ホストOSの上で「仮想化ソフト」を動かすタイプ
ホストOSとアプリを共存できるのでPCからの個人利用の形
で多いが、ホストの負荷が大きい
ホスト形仮想化ソフト
(VirtualBOXなど)
OS (1) OS(2) OS(3)
アプリ アプ...
8
ホストOSの代わりに「ハイパーバイザー」が仮想サーバを
制御する。ホストサーバ全体を仮想化で利用するため、ホス
トOSを経由しないためホストOS型よりレスポンスが良い
ハイパーバイザー
(VMWareなど)
OS (1) OS(2) OS(...
9
OSの代わりに各コンテナがアプリを稼動させます。今まで
より一番ホストマシンの処理負荷が低い
コンテナ管理ソフトウェア
(Dockerなど)
コンテナ(1) コンテナ(2) コンテナ(3)
アプリ アプリ アプリ
ホストOS(Linux)
...
• 処理速度が速い
→ OSやハードウェアを仮想化していないためオーバーヘッド
が少なく処理能力が早い
• メモリやディスクの消費量をおさえられる
→ それぞれにカーネルを持たないためメモリ/ディスクの
消費量をおさえられる。
• ポータビリテ...
11
何がうれしいのか?
■検証・使い捨て環境がすぐに使える
→ 「低コスト」かつ「コマンド1発」で利用できる。
■環境の統一化
→ 開発・運用・ステージングと色々な「環境」を用意せずに
コンテナに統一できる。
■クラウド時代のバズワードが手軽に実現
→ イミュータブル...
(C)Copyright 1996-2014 SAKURA Internet Inc.
14
今回はCentOS 7系でインストールします
今日の資料は別途、公開いたします
2万円クーポンを配るのでそれで復習できます
15
「curl -sSL https://get.docker.com/ | sh」とコマンドを入れるとDocker
のインストールがはじまります。
curl -sSL https://get.docker.com/ | sh
16
「systemctl start docker」とコマンドを入れるとDockerが動きます
systemctl start docker
17
「docker version」と入力してDockerのバージョンが表示されれば、
Dockerが正常にインストールされています。
docker version
18
コンテナを起動する「docker run」
■docker run コマンド
→ 指定したイメージのコンテナを起動する
■構文
→ docker run イメージ [オプション][コマンド][引数]
■オプション
→ -d バックグランドで実行
→ -i コンテナの標準入力を開く
→ -...
20
ちゃんとDockerが動くか「hello world」を動かしてみたいと思います。
上記のコマンドを入力してください。
docker run hello-world
21
「hello world」の入力が終わると、上記のような画面が表示されます。
22
これだけではつまらないので
アプリを入れてみましょう
23
「Ghost」は最近、人気が出ているNode.js製の軽量ブログエンジンです。
今回はDockerを利用して、コマンド1発でインストールします。
• Node.jsとnpm
• ApacheとかのWebサーバ
• その他、色々
24
「Ghost」をインストールして利用するには上記のような物を色々とインス
トールする必要があり面倒です。
25
Ghostを80番ポートで利用できるようにします。元々Ghostは2368番ポート
で動いているので80番ポートとマッピングさせます。
docker run -p 80:2368 -d ghost
26
インストールが終わったら「(IPアドレス)」をブラウザで入力してください。
上記のような「画面」が表示されます。「(IPアドレス)/admin」でGhostの
セットができます。
27
起動を確認したら、このコンテナを止めてみましょう。コンテナの止め方は
「docker stop (コンテナのID)」で止りますので「docker ps」でコンテナ
IDを調べます。
docker ps
28
「docker ps」を入力して「CONTANER ID」を確認する。
29
「docker stop (コンテナのID)」を入力すると、ghostのコンテナが止りま
す。(先ほどの例だと07a4e04f6418となります。)
docker stop (CONTANER ID)
30
Docker Compose
31
Docker Composeは、複数のコンテナか
ら構成するサービスを従来よりも簡単に
構築できるツールです。
従来はコンテナを作成するには、いちい
ち「docker run」しなければならなかっ
たのが、コマンド1発で複数のコンテナ
を...
32
Docker Composeを利用して
Zabbix 3.0の環境を構築する
33
上記のコマンドを入力して、Docker Composeのバイナリをセットする
curl -L
https://github.com/docker/compose/releases/down
load/1.6.2/docker-compos...
34
「docker-compose version」を入力すると、Docker composeのバージョ
ンが表示される、正しくインストールされれば、このコマンドでバージョン
情報が表示される。
docker-compose version
35
本来であれば、作業用のディレクトリの中に「docker-compose.yaml」を
用意する必要があるのですが、今回は事前に私の方で作成したので、そちら
をクローンしてください。クローンが終わったら「zabbix3」に移動します。
gi...
36
先ほど作成したディレクトリ「zabbix3」の中で「docker-compose pull」
を入力。Zabbixに必要なイメージをダウンロードします。
docker-compose pull
37
エラーが出ていなければ「docker images」を入力して「zabbix-3.0」と
「zabbix-db-mariadb」のイメージが取得できているか確認をする。
docker images
38
エラーが出ていなければ「docker images」を入力して「zabbix-3.0」と
「zabbix-db-mariadb」のイメージが取得できているか確認をする。
39
イメージを取得できていれば「docker-compose up -d」を入力してZabbix
起動に必要な複数のコンテナを立ち上げます。
docker-compose up -d
40
「docker-compose up -d」でコンテナを立ち上げた後「docker ps」で、
正常に動作しているか確認する。
docker ps
41
正常に動作していれば、ブラウザにサーバのIPアドレスを入力すれば、Zabbix のロ
グイン画面が表示されます。ID: Admin 、 Password: zabbix でログインした後、パス
ワードを変更してください。
DockerとDocker Composeを利用すると、
すぐに検証環境が利用できて便利
42
43
前佛さんがQiitaに書かれている「Zabbix 3.0をDocker Composeで一度に実行する方
法」が詳しいので、そちらもご確認ください。
http://qiita.com/zembutsu/items/686b99be90d7...
ご静聴ありがとうございました。
資料は公開しているので、わからない所があれば
資料でご確認ください。
44
Upcoming SlideShare
Loading in …5
×

「さくらのクラウド」を使って10分でできるDocker (オープンソースカンファレンス2016 Gunma)

2,654 views

Published on

2016年5月14日、「オープンソースカンファレンス2016 Gunma」で、クラウド開発室 横田 真俊が、「「さくらのクラウド」を使って 10分でできるDocker」と題し、セミナーを行った際の資料です。
■セミナー詳細
 https://www.ospn.jp/osc2016-gunma/modules/eguide/event.php?eid=17

Published in: Services
  • Be the first to comment

「さくらのクラウド」を使って10分でできるDocker (オープンソースカンファレンス2016 Gunma)

  1. 1. (C)Copyright 1996-2014 SAKURA Internet Inc. さくらインターネット 横田真俊(@wslash) 2016/05/14
  2. 2. 2 氏名 横田真俊(@Wslash) 「さくらのクラウド」の企画担当 兼 エバンジェリストをやっております 年に50回程度の講演・ハンズオンを 行っております 左のアイコンで、ツイッターを やっていますのでお気軽に お声がけください
  3. 3. 3 Amazon EC2/S3 入門 今は、さくらのクラウド企画担当 をやっていますが、昔はこんな本 を書いていました
  4. 4. 4 ツイッターやFacebookなど ソーシャルメディアの本 を5冊ほど書いてます
  5. 5. Dockerを利用すると コマンド一発で色々なソフトの 検証ができるよ! 5
  6. 6. (C)Copyright 1996-2014 SAKURA Internet Inc.
  7. 7. 7 ホストOSの上で「仮想化ソフト」を動かすタイプ ホストOSとアプリを共存できるのでPCからの個人利用の形 で多いが、ホストの負荷が大きい ホスト形仮想化ソフト (VirtualBOXなど) OS (1) OS(2) OS(3) アプリ アプリ アプリ ホストOS(Windows/Linuxなど) アプリ
  8. 8. 8 ホストOSの代わりに「ハイパーバイザー」が仮想サーバを 制御する。ホストサーバ全体を仮想化で利用するため、ホス トOSを経由しないためホストOS型よりレスポンスが良い ハイパーバイザー (VMWareなど) OS (1) OS(2) OS(3) アプリ アプリ アプリ
  9. 9. 9 OSの代わりに各コンテナがアプリを稼動させます。今まで より一番ホストマシンの処理負荷が低い コンテナ管理ソフトウェア (Dockerなど) コンテナ(1) コンテナ(2) コンテナ(3) アプリ アプリ アプリ ホストOS(Linux) アプリ
  10. 10. • 処理速度が速い → OSやハードウェアを仮想化していないためオーバーヘッド が少なく処理能力が早い • メモリやディスクの消費量をおさえられる → それぞれにカーネルを持たないためメモリ/ディスクの 消費量をおさえられる。 • ポータビリティ → 環境を意識せず使える 10
  11. 11. 11 何がうれしいのか?
  12. 12. ■検証・使い捨て環境がすぐに使える → 「低コスト」かつ「コマンド1発」で利用できる。 ■環境の統一化 → 開発・運用・ステージングと色々な「環境」を用意せずに コンテナに統一できる。 ■クラウド時代のバズワードが手軽に実現 → イミュータブル、オートスケーリング etc… 12
  13. 13. (C)Copyright 1996-2014 SAKURA Internet Inc.
  14. 14. 14 今回はCentOS 7系でインストールします 今日の資料は別途、公開いたします 2万円クーポンを配るのでそれで復習できます
  15. 15. 15 「curl -sSL https://get.docker.com/ | sh」とコマンドを入れるとDocker のインストールがはじまります。 curl -sSL https://get.docker.com/ | sh
  16. 16. 16 「systemctl start docker」とコマンドを入れるとDockerが動きます systemctl start docker
  17. 17. 17 「docker version」と入力してDockerのバージョンが表示されれば、 Dockerが正常にインストールされています。 docker version
  18. 18. 18 コンテナを起動する「docker run」
  19. 19. ■docker run コマンド → 指定したイメージのコンテナを起動する ■構文 → docker run イメージ [オプション][コマンド][引数] ■オプション → -d バックグランドで実行 → -i コンテナの標準入力を開く → -t ttyを確保する → -p ポートフォワード 19
  20. 20. 20 ちゃんとDockerが動くか「hello world」を動かしてみたいと思います。 上記のコマンドを入力してください。 docker run hello-world
  21. 21. 21 「hello world」の入力が終わると、上記のような画面が表示されます。
  22. 22. 22 これだけではつまらないので アプリを入れてみましょう
  23. 23. 23 「Ghost」は最近、人気が出ているNode.js製の軽量ブログエンジンです。 今回はDockerを利用して、コマンド1発でインストールします。
  24. 24. • Node.jsとnpm • ApacheとかのWebサーバ • その他、色々 24 「Ghost」をインストールして利用するには上記のような物を色々とインス トールする必要があり面倒です。
  25. 25. 25 Ghostを80番ポートで利用できるようにします。元々Ghostは2368番ポート で動いているので80番ポートとマッピングさせます。 docker run -p 80:2368 -d ghost
  26. 26. 26 インストールが終わったら「(IPアドレス)」をブラウザで入力してください。 上記のような「画面」が表示されます。「(IPアドレス)/admin」でGhostの セットができます。
  27. 27. 27 起動を確認したら、このコンテナを止めてみましょう。コンテナの止め方は 「docker stop (コンテナのID)」で止りますので「docker ps」でコンテナ IDを調べます。 docker ps
  28. 28. 28 「docker ps」を入力して「CONTANER ID」を確認する。
  29. 29. 29 「docker stop (コンテナのID)」を入力すると、ghostのコンテナが止りま す。(先ほどの例だと07a4e04f6418となります。) docker stop (CONTANER ID)
  30. 30. 30 Docker Compose
  31. 31. 31 Docker Composeは、複数のコンテナか ら構成するサービスを従来よりも簡単に 構築できるツールです。 従来はコンテナを作成するには、いちい ち「docker run」しなければならなかっ たのが、コマンド1発で複数のコンテナ を利用したサービスを構築できます。
  32. 32. 32 Docker Composeを利用して Zabbix 3.0の環境を構築する
  33. 33. 33 上記のコマンドを入力して、Docker Composeのバイナリをセットする curl -L https://github.com/docker/compose/releases/down load/1.6.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
  34. 34. 34 「docker-compose version」を入力すると、Docker composeのバージョ ンが表示される、正しくインストールされれば、このコマンドでバージョン 情報が表示される。 docker-compose version
  35. 35. 35 本来であれば、作業用のディレクトリの中に「docker-compose.yaml」を 用意する必要があるのですが、今回は事前に私の方で作成したので、そちら をクローンしてください。クローンが終わったら「zabbix3」に移動します。 git clone https://github.com/wslash/zabbix3.git cd zabbix3
  36. 36. 36 先ほど作成したディレクトリ「zabbix3」の中で「docker-compose pull」 を入力。Zabbixに必要なイメージをダウンロードします。 docker-compose pull
  37. 37. 37 エラーが出ていなければ「docker images」を入力して「zabbix-3.0」と 「zabbix-db-mariadb」のイメージが取得できているか確認をする。 docker images
  38. 38. 38 エラーが出ていなければ「docker images」を入力して「zabbix-3.0」と 「zabbix-db-mariadb」のイメージが取得できているか確認をする。
  39. 39. 39 イメージを取得できていれば「docker-compose up -d」を入力してZabbix 起動に必要な複数のコンテナを立ち上げます。 docker-compose up -d
  40. 40. 40 「docker-compose up -d」でコンテナを立ち上げた後「docker ps」で、 正常に動作しているか確認する。 docker ps
  41. 41. 41 正常に動作していれば、ブラウザにサーバのIPアドレスを入力すれば、Zabbix のロ グイン画面が表示されます。ID: Admin 、 Password: zabbix でログインした後、パス ワードを変更してください。
  42. 42. DockerとDocker Composeを利用すると、 すぐに検証環境が利用できて便利 42
  43. 43. 43 前佛さんがQiitaに書かれている「Zabbix 3.0をDocker Composeで一度に実行する方 法」が詳しいので、そちらもご確認ください。 http://qiita.com/zembutsu/items/686b99be90d72688aee8
  44. 44. ご静聴ありがとうございました。 資料は公開しているので、わからない所があれば 資料でご確認ください。 44

×