2023-02-25
Docker for Macをインストールする。
kind
、kubectl
をインストールする。
kind
はKubernetesをローカルでテストしたりすることができるツール。
kubectl
はKubernetesのコマンドラインツール。
インストール
確認
Kubernetesノードの一覧確認
nginxコンテナを作成したクラスタにデプロイしていきます。
Deploymentリソースのマニフェスト
Kubernetesでコンテナをデプロイするにはマニフェストファイルを作成する必要がある。
myapp.yaml
ConfigMapリソースのマニフェストファイル
Kubernetesで設定情報を扱うにはConfigMapリソースを使う
myapp-config.yaml
docker.io/nginxイメージには/etc/nginx/templates
に*.template
の名前で設定ファイルのテンプレートを
配置すると、テンプレートに含まれる環境変数をその値で変換し、/etc/nginx/conf.d
に配置する。
ConfigMapを/etc/nginx/templates
にマウントするように変更している。
Secretリソースのマニフェストファイル
Kubernetesで秘匿情報を扱う場合はSecretリソースを使う。
Secretリソースのdataフィールドに値をBase64エンコードして設定する。
myapp-secret.yaml
Secretリソースのマニフェストの管理
- パスワードのついた別の保管庫に保存する
- Sealed Secrets などを利用してSecretリソースを暗号化する
- External Secrets Operator などを利用して、外部のシークレットストアと連携する。
以下のコマンドでクラスタにPodの作成、変更ができる。
Deploymentリソースの状況確認
作成したPodを確認
podのログ確認
PodにHTTPでアクセスする
別ターミナルを開いて確認すると、
Hello kubernetes
が出力される。