August 2024
Intermediate to advanced
660 pages
9h 58m
Japanese
コンテナは、現代のソフトウェア開発において、必須の技術の1つと言えるでしょう。DockerやKubernetesなどのソフトウェアを使って、サーバ上でのアプリケーションの実行環境を管理したり、開発環境を共有したりするなど、コンテナ技術は広く使われています。そんなコンテナ技術ですが、その名前が表すように、アプリケーションとそのための環境が入った「箱」であるというイメージを持っている方も多いのではないでしょうか? しかし、この「箱」は何をどのように分離しているのでしょうか?
本章では、このような疑問を解決するため、主にLinux上においてコンテナランタイムを実現するために使われている要素技術を紹介・深掘りします。さらにはrootlessコンテナという比較的新しい技術にまつわるHack、また、コンテナを便利に使うためのHackなども紹介します。本章を読み終えたときには、あなたにとって、コンテナという「箱」は、もはや「ブラックボックス」ではなくなっているでしょう。
このHackではコンテナの要素技術であるLinuxネームスペースについて解説します。
本章のテーマはコンテナ技術ですが、そもそもコンテナとは何なのでしょうか? 「コンテナ」という用語は、Open Container Initiative(OCI)の Runtime Specification†1によって、「隔離とリソースの制限を設定可能な、プロセス ...
Read now
Unlock full access