Software Design plus Docker実践入門 ―⁠―Linuxコンテナ技術の基礎から応用まで

著者
中井悦司なかいえつじ 著
定価
2,948円(本体2,680円+税10%)
発売日
2015.9.26[在庫なし]
判型
B5変形
頁数
200ページ
ISBN
978-4-7741-7654-3 978-4-7741-7693-2

概要

Linuxのコンテナ技術の1つであるDockerは,迅速なWebサービスの展開に必要不可欠なものであり,多くのIT企業が注目している重要なものである。本書では,そのしくみを明らかにし,DockerをGitHubと連携したデプロイ方法を基礎から解説する。Dockerfileの書き方や管理ツールであるkubernetesとの連携方法,レッドハット社のAtomicHostでの使い方など,最新かつ定番的な情報を盛り込んだ実践的な入門書である。

設定ファイルなどは,本書の補足情報ページを参照ください。

こんな方にオススメ

  • Webエンジニア,サーバエンジニア,ネットワークエンジニア,インフラエンジニア,システムエンジニア

目次

はじめに

第1章 Docker入門

1.1 Dockerの利用形態

  • 1.1.1 Dockerで何ができるのか?
  • 1.1.2 Dockerによるアプリケーション開発の世界

1.2 Dockerが解決する課題

  • 1.2.1 継続的インテグレーションにおける環境の維持管理
  • 1.2.2 継続的デリバリーにおけるデプロイの効率化
  • 1.2.3 Immutable Infrastructureによる確実なインフラ管理

1.3 Dockerの基礎技術

  • 1.3.1 Linuxコンテナー
  • 1.3.2 ディスクイメージ管理機能
  • 1.3.3 ネットワーク管理機能
  • 1.3.4 CPUとメモリーの制御

1.4 Gitの使い方

  • 1.4.1 Gitによるバージョン管理
  • 1.4.2 Gitの基本操作

第2章 Dockerの利用方法

2.1 Dockerの基本操作

  • 2.1.1 CentOS 7のインストール
  • 2.1.2 Dockerのインストールとコンテナーの起動
  • 2.1.3 コンテナーのライフサイクル
  • 2.1.4 ポートフォワーディングによる外部からの接続
  • 2.1.5 Dockerレジストリーの活用

2.2 コンテナーイメージの自動作成

  • 2.2.1 はじめてのDockerfile
  • 2.2.2 Dockerfileとシェルスクリプトの連携
  • 2.2.3 Gitと連携した自動化

2.3 複数コンテナーの連携活用

  • 2.3.1 同一ホスト上でのコンテナーの連携
  • 2.3.2 異なるホスト間でのコンテナーの連携

2.4 公開イメージの活用.86

  • 2.4.1 「docker run」ですぐに実行 ─ NyanCat
  • 2.4.2 GitHubからコンテナーイメージを作成 ─ WordPress

第3章 dockerコマンドリファレンス

3.1 dockerデーモンの管理

  • 3.1.1 dockerサービスの操作方法
  • 3.1.2 dockerデーモンの起動オプション
  • 3.1.3 構成情報の確認:version,info

3.2 Docker HUBとプライベートレジストリーの利用

  • 3.2.1 Docker Hubの検索:search
  • 3.2.2 プライベートレジストリーの検索
  • 3.2.3 コンテナーイメージのダウンロード:pull
  • 3.2.4 コンテナーイメージのアップロード:login,push

3.3 コンテナーイメージの管理

  • 3.3.1 ローカルイメージの一覧表示:images
  • 3.3.2 イメージのタグ付けと削除:tag,rmi
  • 3.3.3 イメージの作成履歴確認:history
  • 3.3.4 コンテナーイメージの保存:commit
  • 3.3.5 ローカルイメージの書き出しとリストア:save,load
  • 3.3.6 ファイルシステムの書き出しとリストア:export,import

3.4 コンテナーの操作

  • 3.4.1 コンテナーの起動:run,create
  • 3.4.2 コンテナーの停止/再起動:stop,start,restart,kill,wait
  • 3.4.3 コンテナーの破棄:rm

3.5 コンテナーの状態確認

  • 3.5.1 コンテナーの一覧表示:
  • 3.5.2 コンテナー内のプロセスを表示:top
  • 3.5.3 コンテナー内の出力を表示:logs
  • 3.5.4 コンテナー内のファイルを確認:diff,cp
  • 3.5.5 コンテナー内のプロセスに接続:attach
  • 3.5.6 コンテナー内でコマンドを実行:exec

3.6 Dockerfileによるコンテナーイメージ作成

  • 3.6.1 buildサブコマンドの使い方
  • 3.6.2 Dockerfileで使用する命令

第4章 Dockerの内部構造と関連ツール

4.1 Dockerの内部構造

  • 4.1.1 コンテナー内部のプロセス管理
  • 4.1.2 コンテナーイメージ管理
  • 4.1.3 複数ホストのネットワーク管理

4.2 Kubernetesによるオーケストレーション

  • 4.2.1 Kubernetesのアーキテクチャ
  • 4.2.2 Kubernetesのインストール
  • 4.2.3 Webサーバーの負荷分散構成例

4.3 Atomic Hostの利用

  • 4.3.1 Atomic Hostの特徴
  • 4.3.2 rpm-ostreeによるバージョン管理
  • 4.3.3 SPC(Super Privileged Container)の利用

4.4 今後の発展

  • 4.4.1 overlayfsによるコンテナーイメージ管理
  • 4.4.2 CRIUによる稼働状態コンテナーの保存

おわりに

プロフィール

中井悦司なかいえつじ

1971年4月大阪生まれ。ノーベル物理学賞を本気で夢見て,理論物理学の研究に没頭する学生時代,大学受験教育に情熱を傾ける予備校講師の頃,そして,華麗なる(?)転身を果たして,外資系ベンダーでLinux エンジニアを生業にするに至るまで,妙な縁が続いて,常にUnix/Linux サーバと人生を共にする。最近は,Linux ディストリビュータに籍をおいて,企業システムでのLinux/OSS の活用促進に情熱を燃やす日々を過ごしながら,雑誌記事や書籍の執筆にも注力。
休日は,ロシア文学と哲学書を読みながら,ピアノジャズを楽しむはずが,今はなぜか,小学1年生の愛娘とスポーツクラブのプールに通う,近所で評判の「よいお父さん」。「世界平和」のために早めの帰宅を心がけるものの,こよなく愛する場末の飲み屋についつい立ち寄りがちな今日このごろ。
Linux/OSS による業務アプリケーションの開発から,全国の小売店舗で稼働する10,000 台以上のLinux サーバーの運用サポート,プライベートクラウドの設計・構築まで,さまざまなプロジェクトを通して身につけた,「プロの心構え」を若手エンジニアに伝えるために苦心中。最近は,機械学習理論などデータサイエンスの基礎知識の啓蒙にも活動範囲を拡大。