🙆‍♀️

とりあえず動かしてみるKubernetes

2021/10/30に公開

はじめに

Kubernetesに触れる機会があり、はじめの一歩として動かしてみました。
簡潔にとにかく動かしている記事が少なかったので、書いてみます。
express.jsで作ったAPIをローカルのKubernetes環境にdeployしてみました。
こちらの記事を参考にさせていただきました。(なぞりました。)
https://tamanyan.me/posts/deploy-node-app-to-kubernetes-in-10-mins
自分はハマって5時間かかりましたw

事前準備

  • Docker for macのインストール
  • Kubernetesの有効化
    Docker for macから設定
  • kubectlのインストール
brew install kubectl

kubectl config

kubectlのアクセス先をdocker-desktopにします。

kubectl config use-context docker-desktop    

kubectl dashboardのdeploy

kubernetesの稼働状況を見るために便利なWeb UIがあるのでそれを使えるようにします。

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml

http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/ にアクセスする
tokenの取得

% kubectl -n kube-system get secret
deployment-controller-token-XXXXX                kubernetes.io/service-account-token   3      28d
kubectl -n kube-system describe secret deployment-controller-token-XXXXX

でtokenを取得できるのでそれを入力

docker build -> kubernetesへdeploy

コードはこちらを使ってください。
https://github.com/dl10yr/sample-k8s-nodejs

docker build --no-cache -t gcr.io/sample-project/sample-app:v1 .
kubectl apply -f k8s/deployment.yaml
kubectl apply -f k8s/service.yaml

良い感じにdeployされる

http://localhost/ にアクセスする

deleteする

kubectl delete -f k8s/deployment.yaml
kubectl delete -f k8s/service.yaml

dashboard (これで良いのか?)

kubectl delete -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.0/aio/deploy/recommended.yaml

Discussion