Skip to Content
Docker:アップ&ランニング 第3版
book

Docker:アップ&ランニング 第3版

by Sean P. Kane, Karl Matthias
March 2025
Intermediate to advanced
418 pages
6h 56m
Japanese
O'Reilly Media, Inc.
Content preview from Docker:アップ&ランニング 第3版

第5章. コンテナを使う

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

前章では、Dockerイメージの構築方法と、出来上がったイメージをコンテナ内で実行するために必要な非常に基本的な手順について学んだ。この章では、まずコンテナ技術の歴史を見てから、コンテナの実行に深入りし、コンテナが受け取る全体的な構成、リソース、権限を制御するDockerコマンドを探求する。

コンテナとは何か?

VMwareやKVMのような仮想化 システムをご存じだろう。このシステムでは、ハイパーバイザとして一般的に知られている仮想化レイヤの上で、完全なLinuxカーネルとオペレーティング・システムを実行することができる。VMwareやKVMのような仮想マシンは、ハイパーバイザーとして知られる仮想化レイヤーの上で完全なLinuxカーネルとオペレーティング・システムを動作させることができる。このアプローチでは、各仮想マシンがハードウェア仮想化レイヤーの上の別のメモリ空間にある独自のオペレーティング・システム・カーネルをホストするため、ワークロード間の分離が非常に強力になる。

コンテナは基本的に とは異なる。コンテナはすべて単一のカーネルを共有し、ワークロード間の分離はすべてその単一のカーネル内で実装されるからだ。これはオペレーティングシステムの仮想化と呼ばれている。

libcontainer READMEにコンテナの定義が簡潔に書かれている:

コンテナは、ホストシステムのカーネルを共有し、システム内の他のコンテナから(オプションで)分離された、自己完結型の実行環境である。

コンテナの主な利点の1つは、リソースの効率化だ。分離されたワークロードごとに、システム全体のインスタンスを必要としないからだ。カーネルを共有しているため、分離されたタスクとその下にある実際のハードウェアの間にあるインダイレクトのレイヤーが1つ減る。コンテナ内でプロセスが実行されているとき、コンテナを管理するカーネル内にはほんの少しのコードしかない。これと対照的なのが仮想マシンで、そこでは2つ目のレイヤーが実行されることになる。仮想マシンでは、プロセスからハードウェアやハイパーバイザへの呼び出しは、プロセッサの特権モードを2回出たり入ったりする必要がある。

libcontainerはGoライブラリ で、アプリケーションからLinuxコンテナを管理するための標準インタフェースを提供するように設計されている。

しかしコンテナ・アプローチは、基盤となるカーネルと互換性のあるプロセスしか実行できないことを意味する。例えば、VMwareやKVMのような技術によって提供されるハードウェア仮想化とは異なり、WindowsアプリケーションはLinuxホスト上のLinuxコンテナ内でネイティブに実行することはできない。しかし、WindowsアプリケーションはWindowsホスト上のWindowsコンテナ内で実行できる。つまりコンテナは、コンテナ・サーバーのカーネルと互換性のあるお気に入りのアプリケーションやデーモンを実行できる、OS固有のテクノロジーとして考えるのがベストだ。コンテナについて考えるときは、仮想マシンについてすでに知っているようなことはなるべく捨てて、代わりにコンテナを、サーバ上で実行される通常のプロセスのラッパーとして概念的にはとらえるべきだ。

仮想マシン内でコンテナを実行できることに加え、コンテナ内でVMを実行することも完全に可能だ。そうすれば、Linuxコンテナ内で実行されているWindows ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

初めてのSQL 第3版

初めてのSQL 第3版

Alan Beaulieu, 株式会社クイープ
インタフェースの設計 第3版

インタフェースの設計 第3版

Jenifer Tidwell, Charles Brewer, Aynne Valencia

Publisher Resources

ISBN: 9798341624474