この記事はITRCアドベントカレンダーの13日目の記事になります。

この前の記事は 私の ゴミ記事 です。

この次の記事は rin1208 さんの 何かかく です。

※この記事の内容に一切の責任は持ちません。また、内容について理解不足などによって誤った記述があるかもしれません。その場合は 私のTwitter などに連絡をいただければ幸いです。

「私にどうか……Dockerを理解できる力をください」

私達が普段Dockerを初学者に教えたり教えてもらったりする場合、人にもよるかと思うが大半は抽象的な概念としてのコンテナ技術についてと実際にDockerを使う際のコマンドなどを教えるみたいなことが多いと思います。

また、実際にDockerを使う際にバグに当たったりしない限りはDockerのソースコードを読むことはないというのが実際だと思います。(気が触れたりしない限りは)

本記事では、実際にDockerがどうやってネットワークを作成しているのかを例として追ってみます。

「エンジニア君 これは命令です 今後は変なまとめブログではなく正しい情報を見るといいなさい」

まず、Dockerのソースコードについてです。

現在、Dockerのバージョンは2020年12月8日にDocker 20.10がリリースされたばかりです。

Dockerのソースコードは以前は以下のリポジトリを参照することになっていました。

docker/docker-ce

しかし、↑のリポジトリのREADME.mdにも書いてあるとおり、Docker20.10リリース以降はDockerEngineとDockerCLIのパッケージは以下のそれぞれのリポジトリで開発が進められることになりました。

今後は上記の docker/docker-ce リポジトリはアーカイブされ、非推奨な情報となるらしいです。

↓今後のDockerEngineのリポジトリ↓

moby/moby

↓今後のDockerCLIのリポジトリ↓

docker/cli