「さくらのクラウド」を使って10分でできるdocker...

Post on 15-Apr-2017

1.146 Views

Category:

Services

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

(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)

アプリ アプリ アプリ

ホストOS(Windows/Linuxなど)

アプリ

8

ホストOSの代わりに「ハイパーバイザー」が仮想サーバを制御する。ホストサーバ全体を仮想化で利用するため、ホストOSを経由しないためホストOS型よりレスポンスが良い

ハイパーバイザー(VMWareなど)

OS (1) OS(2) OS(3)

アプリ アプリ アプリ

9

OSの代わりに各コンテナがアプリを稼動させます。今までより一番ホストマシンの処理負荷が低い

コンテナ管理ソフトウェア(Dockerなど)

コンテナ(1) コンテナ(2) コンテナ(3)

アプリ アプリ アプリ

ホストOS(Linux)

アプリ

• 処理速度が速い→ OSやハードウェアを仮想化していないためオーバーヘッド

が少なく処理能力が早い

• メモリやディスクの消費量をおさえられる

→ それぞれにカーネルを持たないためメモリ/ディスクの

消費量をおさえられる。

• ポータビリティ

→ 環境を意識せず使える

10

11

何がうれしいのか?

■検証・使い捨て環境がすぐに使える→ 「低コスト」かつ「コマンド1発」で利用できる。

■環境の統一化→ 開発・運用・ステージングと色々な「環境」を用意せずに

コンテナに統一できる。

■クラウド時代のバズワードが手軽に実現

→ イミュータブル、オートスケーリング etc…

12

(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 コンテナの標準入力を開く

→ -t ttyを確保する

→ -p ポートフォワード

19

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/download/1.6.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

34

「docker-compose version」を入力すると、Docker composeのバージョンが表示される、正しくインストールされれば、このコマンドでバージョン情報が表示される。

docker-compose version

35

本来であれば、作業用のディレクトリの中に「docker-compose.yaml」を用意する必要があるのですが、今回は事前に私の方で作成したので、そちらをクローンしてください。クローンが終わったら「zabbix3」に移動します。

git clone https://github.com/wslash/zabbix3.git

cd zabbix3

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/686b99be90d72688aee8

ご静聴ありがとうございました。

資料は公開しているので、わからない所があれば

資料でご確認ください。

44

top related