meta-something

論文とか研究とか趣味のネタとか

『プログラマのためのDocker教科書』感想

数か月前からちまちまDockerを調べては触ってきたのだけれど、そろそろ情報がまとまった書籍を元に知識を整理したくなったので読んでみた。

本書は、Linuxのコンテナ仮想化ツールであるDockerを使って、コードでインフラ環境を構築するための入門書です。開発環境や実行環境などインフラ構築「自動化」の経験がない開発者を対象に、おさえておきたいシステム基盤&インフラの基礎知識に加えて、Dockerによるインフラ構築と管理の方法をやさしく解説します。理解しにくいネットワークや仮想技術などのインフラの基礎概念を図解しながら、開発/実行環境を実際に構築することで、構成管理ツールを使ったインフラ構築の流れを解説していきます。

目次は以下の通り。

  1. おさえておきたいシステム/インフラの知識
  2. コンテナ仮想化技術とDocker
  3. Dockerのインストールと基本コマンド
  4. Dockerfileを使ったコードによるサーバ構築
  5. Dockerイメージの共有─Docker Registry
  6. 複数コンテナの一元管理─Docker Compose
  7. マルチホスト環境でのDocker運用─Docker Machine、Docker Swarm
  8. クラウドでのDocker運用

コンテナ型仮想化技術の難しい&細かい技術の記述は控えめに、インフラの基礎知識を簡単に前置きしたあと、実行環境の仮想化を実現するために「Dcokerをどう使えるか」がまとめてある。「Dockerで何ができて、何が嬉しいのか?」を知りたい入門者向けにはとても良い内容であり、特に1~4章はインフラの基礎知識とDockerの用例が実際のコマンドレベルで書かれているので、社内研修の教科書とかに使えるのでは?という印象を受ける。細かい内容はQiitaとか公式ドキュメントとか個人ブログを見ればもっと詳しく記述されている記事があるけれど、やはり全部まとめて書かれた書籍があることは大事。個人的に身内でDocker利用を布教したいと考えていたので、他人への紹介や参考書としても重宝しそう。

ただし、Docker周辺技術はあまりにも変化が早いので、既に一部記述が最新ではない部分があったりなかったり。本書は初版が2015年11月19日と約1年前なのだけれど、7,8章で触れられているクラスタ管理技術であるDocker Swarmについては、2016年6月末にDocker Engineと統合されてDocker Swarm Modeとしてより簡単にネットワークやサービスの構築が利用できるようになっている。

docs.docker.com

qiita.com

その部分は本書ではおまけのような扱いなので、あまり気にする必要はない(クラスタ管理するような人は、たぶん自分で調べられるだろうし)。特に前半~中盤のコアなDockerコマンド周辺はそうそう変化があるものではないだろう。 総じて、Dockerという技術を利用したいが何処から手を付ければよいのか…という人向けの教科書として良書である。

SC16 メモ

ソルトレイクシティで開催されたSC16に参加してきました。めっちゃ楽しかったです。 ただ、初SCで事前知識がなく、現地についてからも混乱していたため、備忘録的にメモを残しておく。(セッション内容はまた別に)

SC16の概要

  • 期間:2016年11月12日(土)~18日(金)
  • 場所:アメリカ合衆国ソルトレイクシティ
  • SCはSupercomputing Conferenceの略。西暦の下2桁で開催年を示す(2016年=SC16)
  • 全プログラムはこちら
  • HPC分野のお祭り(ボス談)で、色んなイベントが詰め込まれている
    • Exhibit
    • Paper
    • Workshop
    • Panel (Birds of Feather)
    • Tutorial
    • その他色々…
  • HPC分野で有名なTOP500, GREEN500, GRAPH500などが発表される
  • HPC分野で有名なゴードンベル賞の発表もここで
  • 参加費が結構する(参加形式によってかなり違う)
  • 休憩時間にフルーツとか飲み物が会場においてある
  • 参加形式によって様々なレセプションが催される

イベントの形式毎の概略

  • Exhibit
    • 企業とか大学機関が様々な展示(ポスターとかラックとか実演とか講演とか商談とか。なんでもあり)
  • Paper
    • SC16で口頭発表があり、論文はThe International Conference for High Performance Computing, Networking, Storage, and Analysis採録される
    • 概要の締切が3月頃、査読を通ると11月頃にSCで口頭発表?
  • Workshop
    • 把握しきれない種類のワークショップ(ストレージとかネットワークとかバイオ応用とか)
  • Panel
    • パネルディスカッション的なもの。(会場から結構質問がびゅんびゅん飛ぶ)
  • Tutorials
  • その他

その他

  • 参加権利がTutorialsとWorkshopとExhibitとその他セッションで違う。(勘違いしていた)参加ページの説明はしっかり読もう