Dockerが分かりやすくなるオペレーティングシステムの話

Dockerを使う人は多いです。しかし、その原理を知っている人は稀です。原理を知らなければ、問題が発生したときに検索に頼るだけで、自力で解決することはできません。Dockerの本質はオペレーティングシステム(OS)にあります。この講義は、コマンドをいくつか覚えるような表面的なものではなく、Dockerを構成するOSの内部を深く掘り下げます。内部構造が見え始めれば、Dockerはもう難しくありません。

難易度 初級

受講期間 無制限

Network
Network
Linux
Linux
Docker
Docker
Operating System
Operating System
linux-containers
linux-containers
Network
Network
Linux
Linux
Docker
Docker
Operating System
Operating System
linux-containers
linux-containers

学習した受講者のレビュー

5.0

5.0

dev_PizzaHop

16% 受講後に作成

個人的にヌルヌルさんの講義スタイルがとても好きです。価値観も似ている気がします。 厳しく、そして真心を込めて教えてくださりありがとうございます。 YouTubeメンバーシップにも加入したので、受講すべき講義がたくさんありますね。 一生懸命勉強して、名声のあるバックエンドエンジニアに成長したいです。 来週月曜日のライブ配信までに完走します。超おすすめ!

5.0

bridge130

24% 受講後に作成

すでに知っていた内容も頭の中にすっきりと整理して、 一本の筋道を作ってくださる、さすが名講義のチェ・ホソン先生!!! ソフトウェア開発者なら、この講義とネットワークの講義は無条件で受講して 土台にすれば、これからの勉強が楽になると思います。

5.0

최우석

31% 受講後に作成

とても理解しやすく、丁寧に教えてくださいます!!

受講後に得られること

  • オペレーティングシステム技術の核心である「仮想メモリ」の作動原理を理解することができます。

  • ファイルシステムがファイルを管理することについて深く理解することで、ファイルの削除と復元がどのように可能なのかを知ることができます。

  • Linuxコンテナ技術がどのような原理で実装されているのかを理解できます。

  • プロセスとスレッドが何であり、どのような違いがあるのかを知ることができます。


内部構造を理解した瞬間、Dockerは本当に簡単になります。


Dockerの基本原理を貫く核心的なOS理論、今こそ確実に理解できます

多くの開発者がDockerを使用しています。しかし、動作原理を正しく理解していなければ、問題が発生したときに自力で解決するのが難しくなります。 Dockerの核心は、実はオペレーティングシステムそのものにあります。そのため、この講義では表面的な使い方ではなく、Dockerを支えているオペレーティングシステムの内部を扱います。


この講義は順序が異なります


この講義でDockerは、11のセクションのうち10番目のセクションになってようやく本格的に登場します。その前の9つのセクションはすべてCPU、メモリ、プロセス、ファイルシステム、ネットワーク、つまりオペレーティングシステムの話です。

理由は単純です。コンテナはある日突然現れた新技術ではなく、Linuxが元々持っていた機能(Namespace、cgroups、Overlayファイルシステム、netfilter)をうまくまとめたものだからです。オペレーティングシステムを順番に辿っていくと、Dockerを「新しく学ぶ」のではなく、すでに知っているものが組み立てられていく過程を確認することになります。

この講義では、Dockerをインストールする前にDockerなしでコンテナを直接実行してみます。この経験をすれば、Dockerコマンドは暗記する対象ではなく、当然の結果となります。

OSの核心原理を理解し、
Linuxコンテナ技術の根本原理を突き詰めて
Dockerエキスパートへと生まれ変わる
旅を始めましょう。

この講義が終わる頃には、あなたは...

OSの核心理論を完璧に理解し、Dockerの基本原理を把握できるようになります。

受講前はDockerが「暗記して使うツール」だったとしても、受講後は「動作が目に見えるシステム」になります。コンテナが起動しない時、ボリュームのデータが消えたように見える時、コンテナ同士の通信ができない時、検索結果をコピー&ペーストするのではなく、オペレーティングシステム(OS)レベルで原因を推論し、自ら解決できるようになります。そして、この知識はDockerだけに留まりません。Kubernetesであれ、その次に登場するいかなる技術であれ、結局は同じOSの上で動いているからです。


✔️

この講義が最短の解決策である理由

Dockerの前に、

OSの内部構造から理解する!

OSの核心である仮想メモリシステムからLinuxコンテナ技術の原理、netfilter ベースのLinuxカーネル内部構造まで、Dockerを正しく理解するために必ず知っておくべき必須理論を、分かりやすく明確に説明します。

※ LinuxカーネルのIPプロトコル実装に統合されているnetfilterについても学習します。これをもとにiptablesコマンドを適切に活用できるようになります。


実践!コンテナ技術を理解する

勉強した理論をもとに Dockerなしでコンテナを実行してみます。このような過程を通じてコンテナ技術の核心を把握することができ、実はDockerが単なるパッケージングに過ぎないという事実を知ることができます。

関連がないように見えて、実は本質が同じもの

ネットカフェやコンピュータ実習室のPCを簡単に初期化する方法や、マルウェアからシステムを保護するための技術の原理が仮想化技術の原理と同じであるということを理解すれば、その本質を知ることができます。


自らその必要性を感じることができます!

Docker composeやk8sが必要な理由を頭で知るのではなく、経験として理解したかのように体得できます。原理を理解し、自分のものとして扱い、領域を拡大していく過程を経験すれば、自ずとその必要性を感じることができます。そして、必要性という切実さは強力な学習動機になってくれます。


このような方々の悩みを
解決できます!

📌

Dockerを学ぶ必要があるものの、オペレーティングシステムの基本原理に対する理解が不足していると感じている新人開発者


📌

仮想メモリ、プロセススケジューリングのようなオペレーティングシステムの核心概念がDocker環境でどのように活用されているかを知りたいクラウド入門者


📌

Linuxコンテナがどのように動作するのか正確に理解できていないため、障害発生時に根本原因の把握に苦労している初級システムエンジニア


ステップ1 — 出発点を合わせる (セクション1)
本格的な授業に先立ち、知っていることを前提とする内容と、理解ではなく暗記すればよいものを明確に区分します。どこまで知っていればついていけるのか、あらかじめ確認することができます。


2段階 — コンピュータという機械の本質 (セクション 2)
コンピュータのアイデンティティを決定するCPU、そしてRegisterからCache、RAM、SSDへと続くメモリ階層を扱います。すべての物語の物理的な土台となります。


3段階 — 実行の主体、プロセス (セクション 3)
コンピュータの世界における行為の主体と対象を区別する視点を確立し、CとJavaのコードの動作原理の違い(およびJVM)、スケジューリングとスイッチング、プロセス間の関係と権限まで '実行'の実体を把握します。


ステップ4 — ファイルシステム (セクション 4)
ファイルが実際にどこにどのように保存されるのか、削除すると内部で何が起こるのか(ワクチンのリアルタイム監視エンジンの原理まで)、WindowsとLinuxのディレクトリ構造の比較、プログラムの「インストール」の実体、そしてLinuxのファイル管理コマンドまで扱います。


ステップ5 — 仮想メモリ、隔離の始まり (セクション 5)
プロセスメモリの隔離(よくあるゲームハッキング手法がなぜ通用するのかも併せて)、メモリスワップ、Copy on Write、プロセス間通信(IPC)、ファイルアドレス空間からRAMドライブまで。コンテナの「隔離」を理解するために必要な核心的な概念がすべてここで出てきます。


ステップ6 — コンテナを構成するピース (セクション 6〜7)
ネットカフェのHDD復旧原理から出発してOverlayファイルシステムの構造を理解し、LinuxのNamespaceとControl groups(cgroups)を学びます。事実上、これらのピースこそがコンテナそのものです。


ステップ7 — コンテナの実体 (セクション 8)
コンテナ技術の概要とコンテナイメージ標準(OCI、Dockerもこの標準に従います)を確認した後、Dockerなしでコンテナを実行します。


ステップ8 — ネットワーク、最後のパズル (セクション 9)
誰もが使う共有機の動作原理(NAT)から始まり、netfilterとChain、iptables、Linuxネットワークシステムの内部フローと管理コマンドまで。Dockerネットワークが「魔法」ではないということを知ることになります。


ステップ9 — いよいよ、Docker (セクション10)
ついにDockerです。イメージとコンテナ、Windows 11へのインストール、コンテナのライフサイクルと主要なコマンドを扱います。ここまで進んできた受講生にとって、このセクションは復習に近い内容です。


ステップ10 — 実践プロジェクト (セクション 11)
Next.jsフロントエンド、Spring Boot APIサーバー、PostgreSQLデータベースで構成された3層(3-tier)サービスを、実際にコンテナで構築します。イメージの作成、Dockerボリューム、コンテナネットワークの設定まで、実務の流れそのままに仕上げます。



受講前のご注意事項


実習環境

  • Windows 11ベースのWSL

  • Docker Desktop

学習資料

  • 講義資料のPDFファイル

  • 実習に使用するDockerイメージ2個 (Frontend, Backend)


こんな方に
おすすめです

学習対象は
誰でしょう?

  • Dockerコマンドは使えるけれど、問題が発生するとまず検索から始めてしまう方

  • イメージ、コンテナ、ボリューム、仮想ネットワークの「実体」が何なのか気になっていた方

  • OSの理論を学んだものの、実務と結びつかずにもどかしさを感じていた方

  • バックエンド、インフラ、DevOpsの方向で成長しようとしているジュニア開発者

前提知識、
必要でしょうか?

  • OSでIPアドレスを設定した経験(TCP/IPに関する常識)

  • Windows オペレーティングシステム Program files、Windows フォルダの役割の理解

  • C言語プログラミングの経験があれば非常に有用

こんにちは
nullnull8537です。

インフラン認証

52,522

受講生

3,159

受講レビュー

1,216

回答

4.9

講座評価

32

講座

「ゆるい開発者TV」チャンネルのオーナーであり、
30年以上IT技術の海を航海している開発者です。お会いできて嬉しいです。^^

カリキュラム

全体

45件 ∙ (12時間 3分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

5件

5.0

5件の受講レビュー

  • kwoghks98님의 프로필 이미지
    kwoghks98

    受講レビュー 2

    平均評価 5.0

    5

    16% 受講後に作成

    個人的にヌルヌルさんの講義スタイルがとても好きです。価値観も似ている気がします。 厳しく、そして真心を込めて教えてくださりありがとうございます。 YouTubeメンバーシップにも加入したので、受講すべき講義がたくさんありますね。 一生懸命勉強して、名声のあるバックエンドエンジニアに成長したいです。 来週月曜日のライブ配信までに完走します。超おすすめ!

    • nullnull8537
      知識共有者

      最初の受講レビューありがとうございます。何よりも、ありのままの私のスタイルを肯定的に受け止めてくださり、心から感謝いたします。これからも初心を忘れず、自分のすべきことに精一杯取り組んでいきます。 :)

  • bridge1309961님의 프로필 이미지
    bridge1309961

    受講レビュー 5

    平均評価 5.0

    修正済み

    5

    24% 受講後に作成

    すでに知っていた内容も頭の中にすっきりと整理して、 一本の筋道を作ってくださる、さすが名講義のチェ・ホソン先生!!! ソフトウェア開発者なら、この講義とネットワークの講義は無条件で受講して 土台にすれば、これからの勉強が楽になると思います。

    • 1stfly1222님의 프로필 이미지
      1stfly1222

      受講レビュー 2

      平均評価 5.0

      修正済み

      5

      31% 受講後に作成

      とても理解しやすく、丁寧に教えてくださいます!!

      • zibril님의 프로필 이미지
        zibril

        受講レビュー 11

        平均評価 5.0

        5

        32% 受講後に作成

        • hahahl님의 프로필 이미지
          hahahl

          受講レビュー 65

          平均評価 5.0

          5

          7% 受講後に作成

          nullnull8537の他の講座

          知識共有者の他の講座を見てみましょう!

          似ている講座

          同じ分野の他の講座を見てみましょう!

          期間限定セール

          ¥48

          29%

          ¥11,079