docker一些常用命令以及镜像构建完后部署到K8s上
1.创建文件夹
mkdir myfile (myfile是文件名称)
2.删除文件
rm -rf myfile
3.复制现有文件内容到新建文件
cp -r oldfile/ myfile/ (-r是递归复制,会把oldfile这个文件整个复制过来,变成myfile/oldfile)
cp -r oldfile/app myfile/ (如果oldfile下还有一层文件夹app,只想要复制app)
4.打开某个文件
vim Dockerfile (Dockerfile是某个文件)
vim nginx.conf
进入某个文件若是想修改,则按Inset键即可,退出保存按ESC键 + :wq
5.查看文件列表
ls 或者 ll
6.解压文件(tar格式)
tar xvf dist.tar
7.解压镜像
docker load -i nginx.tar
8.查看镜像
docker images
9.删除镜像
docker rmi 镜像名称
10.查看容器
docker ps (查看正在使用的容器)
docker ps -a (查看所有的容器,包括停用的)
11.删除容器
docker rm 容器名称
docker rm -f 容器名称(强制删除)
12.停止运行容器
docker-compose down
13.构建镜像
docker build -t your-docker-image-name:tag . (最后的符号别忘记了,your-docker-image-name:tag标识镜像名称和版本)
14.启动容器
docker-compose up
15.镜像推送到镜像仓库
docker push 仓库地址/镜像名称:镜像版本
16.前端项目镜像构建完成后部署到k8s上
镜像构建的命令前面已经有了
项目根目录下新建一个deployment.yaml文件,配置如下:(前端项目这些配置足以)
apiVersion: apps/v1
kind: Deployment
metadata:
name: frontend-deployment #部署起的名字
spec:
selector:
matchLabels:
app: frontend #应用标签起的名字
replicas: 2 # tells deployment to run 2 pods matching the template
template:
metadata:
labels:
app: frontend #应用标签起的名字
spec:
containers:
- name: frontend #容器起的名字
image: 镜像仓库/镜像名称:镜像标签
ports:
- containerPort: 8088
---
apiVersion: v1
kind: Service
metadata:
name: frontend-service
spec:
type: NodePort //设置类型--访问只需要用端口号就行
selector:
app: frontend
ports:
- protocol: TCP
port: 8088
targetPort: 8088
nodePort: 31005 // 项目用31005端口号访问即可
配置完成后保存退出
- 创建knative服务
kubectl apply -f deployment.yaml 输入命令出现下面提示,service也创建成功
- 删除knative服务
kubectl delete -f deployment.yaml
- 查看pod状态
kubectl get pods 或者 kubectl get pod -o wide 查看是否启动成功
- 查看服务状态
kubectl get services 查看分配的ip地址和端口号,可以根据ip地址和端口号来访问项目
- 查看pod日志
kubectl logs <pod-name>
或者 kubectl describe pod <pod-name>来查看pod的具体描述
- 查看服务日志
kubectl describe svc <svc-name>来查看服务的具体描述