Slide 1

Slide 1 text

ϋτωίΤ werckerから Dockerを使ってみよう @nekonenene

Slide 2

Slide 2 text

ࣗݾ঺հ ハトネコエ • Twitter : @nekonenene • Github : nekonenene • Facebook : 本名 • Job : UUUM • ミクさんかわいい!!!!!!

Slide 3

Slide 3 text

UUUMʁ YouTubeに投稿している
 動画クリエイターをサポートしています

Slide 4

Slide 4 text

̍ なぜDockerを使うのか?

Slide 5

Slide 5 text

ͳͥDockerʁ • 環境の使い捨てが出来る
 (VirtualBoxなどと同じ利点) • VirtualBox(ホスト型)よりも速い • CircleCI 2.0 や wercker による
 標準サポート

Slide 6

Slide 6 text

Docker͸ҙ֎ͱ؆୯ • 最小限で言うなら Dockerfile に
 FROM の行を書くだけでおしまい • docker build と docker run の
 コマンドだけ覚えとけば
 だいたいなんとかなる

Slide 7

Slide 7 text

VirtualBoxΑΓ଎͍ʁ • 仮想化の方式には「ホスト型」「ハイ パーバイザー型」が今まであったが
 Dockerは「コンテナ型」にあたる。 • ユーザー空間のアプリケーションから
 OSの機能を呼び出すホスト型と異なり
 「コンテナ型」はOSカーネルをそのま ま用いる

Slide 8

Slide 8 text

https://thinkit.co.jp/story/2014/12/02/5456 ΑΓ

Slide 9

Slide 9 text

̎ werckerで使ってみよう

Slide 10

Slide 10 text

werckerͱ͸ • CircleCI みたいなものです。
 GitHub や Bitbucket に
 push すると自動で指定タスクを
 おこなってくれます • テストやデプロイなど時間のかかる ことを代わりにやらせます

Slide 11

Slide 11 text

CIͱDocker͸૬ੑྑ͍ CI環境でテストコードを走らせるとき、
 本番環境とPHPバージョンが違うとか
 MySQLバージョンが違うとかでは、
 CIのテストが通るのに本番環境ではバグ が……ということになりかねません。 環境を揃えるためにDockerは便利です

Slide 12

Slide 12 text

ٯʹݴ͏ͱ… • CircleCI 1.0 では選べる環境の
 選択肢が少なかったため、本番環境と
 異なる環境になる場合もあった • もちろん、本番と同環境になるよう
 PHPなどのバージョンをインストール する手段もあるがビルド時間が増す

Slide 13

Slide 13 text

CircleCI 2.0, wercker • CircleCI 2.0 では
 Dockerを標準サポートするように • しかし、それより以前から
 標準サポートしていたwerckerと
 比べると、癖のある記法……

Slide 14

Slide 14 text

͋ͱ͸σϞʂ • ↓話したいこと一覧 • Dockerfileの作り方(with Alpine Linux) • DockerHubの説明 • werckerでのAndroidビルドの話 • werckerでは秘密の環境変数を登録できる話

Slide 15

Slide 15 text

̏ Dockerを実際に使ってみよう
 (デモの内容のいくらかを復習用に書きました)

Slide 16

Slide 16 text

DockerΛΠϯετʔϧ • 以下のURLからDocker for Macを
 インストールします
 https://store.docker.com/editions/community/ docker-ce-desktop-mac • Docker Toolboxは現在公式としても
 非推奨ですので避けましょう
 https://docs.docker.com/toolbox/overview/

Slide 17

Slide 17 text

Dockerfileͷ࡞Γํ • てきとーにフォルダを作ります • そこにDockerfileという名前の
 ファイルを用意します • 今回は alpine を入れてみましょう • Dockerfileの先頭に
 FROM alpine:latest と一行書きます

Slide 18

Slide 18 text

docker build • Dockerfileのあるディレクトリで
 docker build -t alpine-test .
 とコマンドを入力すると、ビルドが始 まります(最後のドットを忘れずに) • 最後のドットはDockerfileがあるディ レクトリを指定するもので、必要です

Slide 19

Slide 19 text

docker run • docker build で作成したDockerイ メージの中に入ってみましょう。
 docker run -it alpine-test
 とコマンドを入力します • ここの中でコマンドを実行しつつ、
 Dockerfileを書き足してくといいです

Slide 20

Slide 20 text

Dockerfileྫ • 今回のデモで作ったDockerfileは
 以下のようになりました。
 FROM alpine:latest
 
 RUN apk update && apk add \
 git

Slide 21

Slide 21 text

ิ଍ • 今回は素早くデモをおこなうため
 Alpine Linux というDocker向けの
 とても軽量なLinuxディストリビュー ションを使いましたが、
 もちろんDockerHubには Ubuntu や
 CentOS のイメージがあります。

Slide 22

Slide 22 text

Dockerfileৄࡉ • Dockerfileの書き方については
 公式サイトに日本語で説明が
 されていますので、そのページを
 読んだり、よりわかりやすく解説した
 記事を探すといいと思います。
 http://docs.docker.jp/engine/reference/ builder.html