見出し画像

Kubernetes完全ガイドでk8s入門

k8sは名前は知っているけれど、触ったことがなかったので、いつか触りたいと思っていたんです。そしたら先日、@satさんのこんなつぶやきを見まして。

これは、朗報!とばかりに、すぐにポチりました。ポチったけど、しばらく積読状態になっていました。ポチったからには、読んで、実際に動かしてみます!やるぞ!💪


Hello,Docker! Hello,Kubernetes!

第1章は、Dockerの復習と「Hello,Kubernetes」です。しかし、私の場合、Docker自体ほとんど触ったことがなく、復習どころか、そこから入門が始まる状態です。Dockerについても解説があるのは、大変うれしいです!

Hello,Docker!

Kubernetes は Docker 以外のコンテナランタイムにも対応していますが、Kubernetes でコンテナ化されたアプリケーションを実行するために必要最低限の Docker の基本を理解できることを目指します。
Kubernetes を利用する際に Docker について学んでおいたほうが良い知識は、次の4つだそうです。
・Docker コンテナの設計
・Dockerfile の書き方
・Dockerイメージのビルド
・Docker レジストリへのイメージのプッシュ

Docker コンテナは、Dockerイメージをもとに実行されるプロセスです。誰かが用意してくれた Docker コンテナを利用したことはあるものの、自分で設計をしたことがないので、自分でDockerコンテナを設計できるようになりたいです。Docker コンテナはホストマシンのカーネルを利用したまま、名前空間の分離、独立したOSのような環境を実現しているので、プロセスの高速な起動と停止ができます。

Docker コンテナの設計

Docker コンテナの作成時の注意点は、
・1コンテナに対して1プロセスのみ起動する
・Immutable Ifrastructure イメージにする
・軽量な Docker イメージにする
・実行ユーザーを root 以外にする

Docker コンテナは、アプリケーションと、アプリケーションを実行するための実行環境をパッケージングするためのツールなので、1つのコンテナで実行する対象は1つにします。関連するエコシステムも同じ思想に基づいているため、1コンテナに1プロセスの関係を維持する必要があるそうです。なるほど、貧乏性なので、ついつい色々盛り込みがちな私なので、これは覚えておかなくてはいけませんね。

さて、読み始めたばかりですが、今夜はこの辺にします。(思ったよりボリュームがあるので、区切りの良いところでやめます)TypeScript入門もやっと2/3くらいまで来たところなのでキリキリ読み進めたいところですが、諸々並行しながら身につけていきたいと思います。
次回の更新は、「力強くアウトプットする日の 20230811」でゴリッとアウトプットする予定です。やるぞ💪

この記事が気に入ったらサポートをしてみませんか?