k8s 学习笔记一之使用gcloud

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
# project名称
# my-k8s-codelab-225201

docker build -t gcr.io/$PROJECT_ID/hello-node:v1 .
docker build -t registry.cn-hangzhou.aliyuncs.com/$PROJECT_ID/hello-node:v1 .

docker push gcr.io/$PROJECT_ID/hello-node:v1
docker push registry.cn-hangzhou.aliyuncs.com/$PROJECT_ID/hello-node:v1


gcloud config set compute/zone asia-northeast1-b

gcloud config set project my-k8s-codelab-225201

gcloud container clusters create hello-world
1
2
3
4
5
6
7
kubectl run hello-node --image=gcr.io/$PROJECT_ID/hello-node:v1 --port=8080
kubectl run hello-node --image=registry.cn-hangzhou.aliyuncs.com/$PROJECT_ID/hello-node:v1 --port=8080


kubectl get deployments

kubectl get pods

要查看 pod 输入或输出错误 (hello-node 镜像没有输出,所以在这记录会是空的) 运行:

1
kubectl logs <POD-NAME>

查看群集的 metadata 运行:

1
kubectl cluster-info

查看群集的 events 运行:

1
kubectl get events

查看 kubectl 设置运行:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
kubectl config view



kubectl expose deployment hello-node --type="LoadBalancer"

kubectl get services hello-node
kubectl get service --all-namespaces


curl http://EXTERNAL_IP:8080

kubectl scale deployment hello-node --replicas=4
kubectl get deployment

滚动更新

1
2
3
kubectl set image deployment/hello-node hello-node=gcr.io/$PROJECT_ID/hello-node:v2

kubectl get deployments

结束

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
kubectl delete service,deployment hello-node

gcloud container clusters delete hello-world


gsutil ls

gs://artifacts.my-k8s-codelab-225201.appspot.com/


gsutil rm -r gs://artifacts.my-k8s-codelab-225201.appspot.com/