K8S部署总结以及相关常用命令吐血总结
程序员文章站
2024-03-12 09:30:26
...
1.制作镜像
在工程的根目录下,也就是包含有Dockerfile文件的目录下,执行如下命令:
docker build -t imageName:tag .
2. 打tag:执行命令
docker tag imageName:tag domain/project/imageName:tag
3.登录镜像库:
docker login -p pwd -u username https://domain
4.push镜像到仓库:
docker push domain/project/imageName:tag
5.打包helm chart
//因为是父子包,所以需要加-u来更新依赖的子包
helm package -u app-chart
6.helm 安装
helm install appName helmChart包 -n my-namespace
7.查询pods的状态:
kubectl get pods -n namespace
8.生成镜像库的秘钥:
kubectl create secret docker-registry my-secret --docker-server=https://domain/project --docker-username=uname --docker-password=pwd --docker-email=emain
9.删除指定的pod
kubectl delete pod podName --force -n ns
10.查询指定pod的详细信息
kubectl describe pod/podName -n ns
11.查询指定pod下指定容器的日志
kubectl logs -c containerName podName -n ns
12.查询指定secrect的详细信息,例如db secrect的详细信息:
kubectl get secret my-secreat -o yaml -n ns
特殊问题:一般在Dockerfile的ENTRYPOINT中会调用shell脚本,但是shell脚本需要linux下的分隔符,在windows下的idea默认是使用CRLF,这个时候在linux环境下运行image的时候,会出现exec user process caused "no such file or directory"的错误信息。需要将分割符修改为LF即可,然后重新打镜像再运行容器。