Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Dockerに触ってみよう

横田真俊(wslash)
January 18, 2017
3.8k

 Dockerに触ってみよう

2017年1月18日のハンズオン資料です。

コマンドの補足資料は下記の通りです
http://qiita.com/Wslash/items/941697bf0fcd3213e7dd

横田真俊(wslash)

January 18, 2017
Tweet

More Decks by 横田真俊(wslash)

Transcript

  1. 1

  2. 17 $ docker Docker Hub Nginx Build Run Ship 開

    発 ・ 構 築 移 動 実 行 今日やること
  3. • 基本操作とコンテナ作成・デプロイ方法を習得 18 1. さくらのクラウド にログイン 2. 仮想サーバ(CentOS 7.2)の起動 3.

    Docker Engine のセットアップ 4. docker コマンドの基本操作を学ぶ 5. Nginx イメージを作成 6. Docker Hub にログイン 7. Docker Hub に push 8. Arukas に Nginx をデプロイ $ docker Docker Hub Nginx ハンズオンの流れ
  4. docker run ▪docker run コマンド → 指定したイメージのコンテナを起動する ▪構文 → docker

    run イメージ [オプション][コマンド][引数] ▪オプション → -d バックグランドで実行 → -i コンテナの標準入力を開く → -t ttyを確保する → -p ポートフォワード 5
  5. docker run hello-worldの結果 5 「hello world」の入力が終わると「docker run –it ubuntu bash」を試し

    てみろ、と言われているので、これを入力してみましょう。
  6. 5

  7. docker ps ▪docker ps コマンド → コンテナIDを確認するためコマンド。これでわかる ものは ・コンテナのID ・コンテナがどのイメージから作られたのか?

    ・コンテナが動いてどのぐらい経過したのか? ▪オプション → -l 直近(latest)のコンテナの情報を表示 → -q コンテナのショートIDのみ表示 → -a 停止しているコンテナも含め全て(all)表示 6
  8. docker logs ▪docker logs コマンド → コンテナの標準出力の内容をコンテナ外から 確認する ▪オプション →

    -tail ログの最後数行が見られるようになる → -follow リアルタイムでログが確認できる。 7
  9. リアルタイムでログを見る 7 docker logs --tail 1 --follow (コンテナのID) Unixコマンドのtail -fのようにfollowオプションをつけることでリアルタイ

    ムでログを確認することができる。上記のコマンドを入力するとリアルタイ ムでログが表示される。止めるには「Ctrl + C」で
  10. docker exec ▪docker exec コマンド → 実行中のコンテナでコマンドを実行します。 ▪構文 → docker

    exec [オプション] コンテナ コマン ド [引数...] ▪オプション → -d コマンドをバックグラウンドで実行 9
  11. Nginx のドキュメント・ルートにある index.html を書き換えます。 96 Nginx のドキュメント・ルートにある index.html を書き換えhello world

    が表示されるようにします echo 'hello world' > /usr/share/nginx/html/index.html cat /usr/share/nginx/html/index.html
  12. 新しいイメージを作るには 101 本日はDocker fileからDockerイメージを作る「docker build」を試します ・docker commit → コンテナからDocker イメージを作る。

    ・docker build → Docker fileからDockerイメージを作る。 ・docker import → Base imageからDockerイメージをつくる。
  13. docker build ▪docker build コマンド → DockerfileからDockerイメージを作る ▪構文 docker build

    –t <Dockerイメージ名>:<タ グ名><Dockerfileを配置するディリクトリ> 11
  14. docker tags コマンド 129 docker tags コマンドで mynginx:1.1 イメージに Docker

    Hub ID の情報 を付けます docker tag mynginx:1.1 <自分のID名>/mynginx:1.1
  15. 13

  16. Docker composeのバイナリをセットする。 158 上記のコマンドを入力して、Docker Composeのバイナリをセットする curl -L https://github.com/docker/compose/releas es/download/1.8.0/docker-compose- `uname

    -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
  17. 163 エラーが出ていなければ「docker images」を入力して「mongo」と 「rocketchat/rocket.chat」と「rocketchat/hubot-rocketchat」のイメー ジを取得できているか確認をする。 # docker images REPOSITORY TAG

    IMAGE ID CREATED SIZE mongo latest 7f09d45df511 5 days ago 336.1 MB rocketchat/rocket.chat latest 30826dfbbfa6 2 weeks ago 332.4 MB rocketchat/hubot-rocketchat latest a727f5c88c43 5 weeks ago 800.5 MB