Docker & 仮想サーバー完全入門 Web クリエイター & エンジニアの作業がはかどる開発環境構築ガイド
ドッカーアンドカソウサーバーカンゼンニュウモンウェブセイサクシャアンドエンジニアガシッテオキタイイチバンヤサシイカイハツカンキョウコウチクガイド
- 著者:
- リブロワークス(リブロワークス)
- 出版社:
- インプレス
- 出版日:
- 2022年09月22日頃
- ISBN:
- 9784295015314
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
技書の森解説
自分のパソコンに Web アプリの動作確認用サーバーを用意しようとして、Linux やサーバーソフトの設定で手が止まった経験がある人に向けた入門書が、『Docker & 仮想サーバー完全入門 Web クリエイター & エンジニアの作業がはかどる開発環境構築ガイド』 (リブロワークス 著、インプレス、2022 年 9 月刊) です。書店向けの紹介文では仮想化技術と コンテナ技術 の両方を対象にし、Docker を「今日から使いこなすためのやさしい解説書」と位置づけていて、「ここから始めて、ずっと使える」ことをうたっています。Windows と Mac の両方に対応し、国立国会図書館の書誌には表紙のタイトルとして「Docker & Virtual Server」が記録されている A5 判の単行本です。
全 5 章と付録 2 本、開発用サーバーの必要性から設定ファイル集まで
構成は全 5 章と付録 2 本です。第 1 章「なぜ開発用サーバーが必要なのか?」は Web アプリの仕組みのおさらいと、サーバーに Linux が使われる理由から始まり、第 2 章「コンテナとは一体何もの?」でコンテナとは何か、その仕組みを説明します。第 3 章「Docker を使うための環境を構築しよう」で Docker のアーキテクチャと始め方を押さえ、第 4 章「Docker を使った仮想サーバー構築に挑戦!」で Docker によるコンテナの作成と、複数コンテナをラクに作れる Docker Compose へ進みます。第 5 章「すぐに使える Docker 設定ファイル集」には Debian コンテナや Ubuntu コンテナをはじめとする設定ファイルが収められ、付録 1 で Docker をさらに学ぶための道筋を、付録 2 で VS Code と Docker を組み合わせた開発環境の構築を扱います。巻末には索引が付いています。
コンテナと仮想マシンの違い、Docker で開発環境をそろえる意味
開発環境を手元に作る難しさは、OS やミドルウェア、言語ランタイムのバージョンが人ごと、案件ごとに違ってしまうことにあります。従来の仮想マシンはハードウェアごと仮想化してゲスト OS を丸ごと動かすため、環境を隔離できる一方でメモリと起動時間の負担が大きくなります。コンテナはホスト OS のカーネルを共有し、アプリケーションとその依存関係だけをイメージとしてまとめるので、軽量で起動が速く、同じイメージからなら誰の手元でも同じ環境が立ち上がります。Docker はこのコンテナを作成、配布、実行するための仕組みで、環境の定義をテキストファイルに書いて再現できることが、「自分のマシンでは動くのに他の人の環境では動かない」という開発現場の定番の悩みへの処方箋になります。本書が Docker のコマンドより先に、なぜ開発用サーバーが必要なのか、サーバーになぜ Linux が使われるのかという章を置いているのは、この処方箋がどんな問題を解くのかを先に納得してから手を動かす順序になっているということです。
Web クリエイターにも読める前提知識と、向かない読者
前提知識として想定されているのは、Web アプリの仕組みを「おさらい」する章から始まる構成が示すとおり、Web 制作やプログラミングに何らかの形で触れたことがある水準です。副題が Web クリエイターとエンジニアを並べているように、プログラマーだけでなく、制作会社でデザインやコーディングを担当する人が、制作物を動かして確認するためのサーバー環境を自分で立ち上げる用途も視野に入っています。Linux のコマンド操作に不慣れでも、サーバーに Linux が使われる理由の説明から入る構成なので、置いていかれにくい配慮があります。一方で、目次に Kubernetes のようなコンテナオーケストレーションや本番運用の章はなく、主題は開発環境の構築に置かれています。すでに Docker を日常的に使っていて、イメージの軽量化や CI での活用といった一歩先を求める人には、物足りない可能性があります。また、2022 年 9 月時点の Docker と周辺ツールを前提にした手順書なので、画面や操作の細部は手元の版と照らし合わせながら読む必要があります。
開発環境の構築で元が取れる Web 制作者とエンジニア
本書を通して目指せるのは、Docker で開発用サーバーを立ち上げ、Docker Compose で複数のコンテナをまとめて動かし、第 5 章の設定ファイル集をひな型にして自分の案件向けの 開発環境の構築 を組み立てられる状態です。案件ごとにサーバーソフトや言語のバージョンが異なり、そのたびに自分のマシンにソフトを入れては消してきた Web 制作者、チームに加わった新人へ同じ環境をそろえて渡す必要があるエンジニア、Docker という言葉は知っていても仮想マシンとの違いを説明できない人は、この一冊で投じた時間を早く回収できます。仮想化とコンテナの理屈を押さえたうえで、すぐに使える設定ファイルまで手に入る構成は、Docker を最初の一歩から確実に身につけたい人にとって堅実な選択です。
言及した記事 (1 件)
この本は技書デッキのカードです (備え 9) 図鑑でこの本を見る
この本に興味がある方におすすめ
関連する本
リブロワークス の他の書籍
関連記事
インフラ / クラウド本ガイド - AWS や Docker を本で学ぶ
クラウドインフラ、コンテナ、IaC を学べる技術書の選び方と学習順序を紹介。インフラ本の賞味期限問題と公式ドキュメントとの使い分けも解説します。
AWS 本の選び方 - 全体像 / 構築 / 設計 / 運用 / セキュリティの 5 視点
AWS を学ぶ技術書の選び方を「全体像 / 構築 / 設計 / 運用 / セキュリティ」の 5 視点で整理。公式ドキュメントと本の役割分担、資格対策書の位置づけまで、2026 年 8 月時点の定番書で AWS 独学のルートを解説します。
Linux 本ガイド - コマンドライン / しくみ / 性能の 3 層で選ぶ技術書
Linux を学ぶ技術書の選び方を 3 層 (コマンドラインの操作 → カーネルのしくみ → 性能と運用) で整理。新しい Linux の教科書や [試して理解] Linux のしくみなどの定番書の使い分けと、学ぶ順番を解説します。
関連用語
Init コンテナ
Kubernetes でメインコンテナの起動前に初期化処理を実行する特殊なコンテナ
コンテナ
アプリケーションとその依存関係をパッケージ化し、環境に依存しない一貫した実行環境を提供する仮想化技術
Dev Container
Docker コンテナ内に開発環境を定義し、チーム全員が同一の環境で開発できる仕組み
コンテナオーケストレーション
コンテナのデプロイ、スケーリング、ネットワーキングを自動管理するプラットフォーム
マルチテナンシー
1 つのシステムで複数のテナント (顧客) のデータを安全に分離して提供するアーキテクチャ
依存性注入 (DI)
オブジェクトが必要とする依存関係を外部から注入することで、モジュール間の結合度を下げテスタビリティを向上させる設計パターン