当前位置: 首页 > news >正文

docker一些常用命令以及镜像构建完后部署到K8s上

docker一些常用命令以及镜像构建完后部署到K8s上

    • 1.创建文件夹
    • 2.删除文件
    • 3.复制现有文件内容到新建文件
    • 4.打开某个文件
    • 5.查看文件列表
    • 6.解压文件(tar格式)
    • 7.解压镜像
    • 8.查看镜像
    • 9.删除镜像
    • 10.查看容器
    • 11.删除容器
    • 12.停止运行容器
    • 13.构建镜像
    • 14.启动容器
    • 15.镜像推送到镜像仓库
    • 16.前端项目镜像构建完成后部署到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 镜像名称 . (最后的符号别忘记了)

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 templatetemplate:metadata:labels:app: frontend #应用标签起的名字spec:containers:- name: frontend #容器起的名字image: 镜像仓库/镜像名称:镜像标签ports:- containerPort: 8088volumeMounts:- mountPath: /home/dataname: simulator-datavolumes:- name: simulator-datahostPath:path: /home/datatype: Directory
---
apiVersion: v1
kind: Service
metadata:name: frontend-service
spec:selector:app: frontendports:- protocol: TCPport: 8088targetPort: 8088

配置完成后保存退出

kubectl apply -f deployment.yaml 输入命令出现下面提示,service也创建成功

在这里插入图片描述

kubectl get pods 查看是否启动成功
kubectl get services 查看分配的ip地址和端口号,可以根据ip地址和端口号来访问项目
http://www.lryc.cn/news/374221.html

相关文章:

  • 在typora中利用正则表达式,批量处理图片
  • 构建LangChain应用程序的示例代码:33、如何在LangChain框架中使用HumanInputChatModel来模拟人工输入的聊天模型教程
  • 虚拟机使用桥接模式网络配置
  • 韩顺平0基础学java——第24天
  • leecode N皇后
  • 2024050802-重学 Java 设计模式《实战模板模式》
  • UNIAPP-ADB无线调试
  • 【stm32-新建工程】
  • 写点什么吧,作为STM32系列的开篇……
  • 代码随想录算法训练营第十天| 232.用栈实现队列|225. 用队列实现栈|20. 有效的括号|1047. 删除字符串中的所有相邻重复项
  • Pulsar 社区周报 | No.2024-06-07 | Apache Pulsar 新分支 3.3 版本发布
  • Go源码--sync库(3):sync.Pool(2)
  • Go如何在本地引用以及发布并引用自定义工具包
  • 使用了代理IP怎么还会被封?代理IP到底有没有效果
  • 在WSL2的Ubuntu中安装和使用Docker/Podman
  • 【WEEK16】Learning Objectives and Summaries【Spring Boot】【English Version】
  • AI大模型会让搜索引擎成为历史吗?
  • SpringSecurity6从入门到实战之SpringSecurity6自定义认证规则
  • Java IO:byte[]、char[]、String三种对象的转换
  • Elasticsearch:简化数据流的数据生命周期管理
  • Verilog综合出来的图
  • KT-H6测距模块标品,测距范围1500m,demo报价1000RMB,批量报价500RMB
  • C数据结构:排序
  • 【Python】在 Pandas 中使用 AdaBoost 进行分类
  • 持续总结中!2024年面试必问 20 道并发编程面试题(九)
  • Linux:线程池
  • 集成学习方法:Bagging与Boosting的应用与优势
  • JEnv-for-Windows 2 java版本工具的安装使用踩坑
  • linux中: IDEA 由于JVM 设置内存过小,导致打开项目闪退问题
  • d3.js获取流程图不同的节点