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

docker基础部署

作为一个前端开发者,其实对部署这块儿并没有太多的学习,只是我平时用的一些,能将我们的系统进行一个部署,所以这篇仅供参考。

1. Jenkins构建与推送 

部署是通过Jenkins+docker,Jenkins就目前我了解到的核心作用就是自动化构建和推送。

我们每次部署时候直接点击右侧的【“运行”】图标即可,即可完成自动化构建镜像、以及自动推送到对应的镜像服务器。点击“运行”图标实际上走了一些命令:

我们点击配置:

可以看到这里可以配置我们的git地址和分支,这样我们要部署的时候,不需要前端再执行run build打包操作,只需要提交代码到git即可,本地测试没问题即可。

然后再往下,会有脚本配置:

 这两行命令的作用如下:

在我们前端的项目根目录会有Dockerfile文件:

会执行这些命令。 

2. 登录堡垒机docker拉取镜像启动 

当我们点击【“运行”】图标完成之后,就说明已经完成推送,这时候我们登录堡垒机,按照大致的如下步骤即可:(这个步骤是我自己简单写的哈,其实并没有严格的步骤,知道常用命令即可,一下简单列举一下我自己常用的命令)

除了构建镜像时需要注意构建上下文外,执行 Docker 命令不需要特定的工作目录。在堡垒机上,你可以自由地在任何目录下执行 Docker 命令来管理镜像和容器。

一:切换当前用户账户到超级用户(即 root 用户)

sudo su

然后输入密码,回车即可。

二:看 Docker 容器状态的命令 

docker ps

docker ps 这个命令默认情况下只列出正在运行的容器,输出的信息通常包括容器的 ID、名称、创建时间、状态、使用的镜像、端口映射等基本信息。  

docker ps -a
docker ps --all

使用 -a 或 --all 参数后,docker ps 命令会列出所有容器,包括那些已经停止或处于退出状态的容器。除了和 docker ps 相同的基本信息外,对于已停止的容器,你还可以看到它们的退出状态码(Exit Code),这有助于了解容器为何停止。 

三: 列出本地 Docker 主机上所有镜像

docker images

四: 拉取镜像

docker pull {ip}:{port}/xxx/xxx/xx-web:{tag}

通过docker pull 从镜像仓库拉取docker镜像,后面的tag表示镜像标签,用于标识版本或构建号。上面Jenkins每次构建、推送完成后这个tag都会加一 

五:进入指定前后端目录,修改tag标签

vim start.sh

 这个进去之后,如果没有其他改动的话,我们只需要修改最后的tag标签即可。

按【a】或者【i】进去编辑状态,按【Esc】退出编辑,按【:wq】保存并退出

六:查看当前的文件

保险起见,我习惯再看一下确认一下修改没问题

cat start.sh

七:停止之前正在运行的 Docker 容器 

docker stop {id}

这个id是前面正在运行的容器的id,不需要全部输入,我们只需要输入前面几位即可,只要能区分出来即可 

八:启动最新的

进入我们指定的前后端目录下,然后执行:

sh start.sh

还有个docker start 命令,因为我平时都是直接用sh start.sh 

九:查看日志

 如果部署完成后,发现系统进不去,或者有其他报错等问题,我们可以执行:

docker logs -f {id}

十:删除指定镜像

docker rmi {id}

十一:进入容器内部进行调试、查看文件

docker exec -it {id}

以上这些基本就是我自己平时常用的一些命令了,平时在我们公司部署已经够用了,咱也不是专业的运维之类的,咱就是一名普通的前端开发者,这些也够用了,这篇也是仅供参考哈~

http://www.dtcms.com/a/278094.html

相关文章:

  • ID生成策略
  • 在新版本的微信开发者工具中使用npm包
  • 用信号量实现进程互斥,进程同步,进程前驱关系(操作系统os)
  • DOS下EXE文件的分析 <1>
  • MacBook Air通过VMware Fusion Pro安装Win11
  • 从代码学习深度强化学习 - DDPG PyTorch版
  • [Python 基础课程]列表
  • 【DataLoader的使用】
  • 力扣 hot100 Day43
  • Actor-Critic重要性采样原理
  • java valueOf方法
  • 【算法】贪心算法入门
  • SwiftUI 7 新 WebView:金蛇出洞,网页江湖换新天
  • 一些git命令
  • 若依框架集成阿里云OSS实现文件上传优化
  • 对于muduo我自己的理解
  • UniHttp生命周期钩子与公共参数实战:打造智能天气接口客户端
  • flask校园学科竞赛管理系统-计算机毕业设计源码12876
  • SPSSPRO:数据分析市场SaaS挑战者的战略分析
  • JAVA并发——什么是AQS?
  • Mapbox GL初探
  • 【unitrix】 5.0 第二套类型级二进制数基本结构体(types2.rs)
  • 16.使用ResNet网络进行Fashion-Mnist分类
  • css如何同时给元素设置背景和背景图?
  • 每日算法刷题Day47:7.13:leetcode 复习完滑动窗口一章,用时2h30min
  • 说实话,统计分析用Python这5个第三方库就够了
  • AutoLabor-ROS-Python 学习记录——第一章 ROS概述与环境搭建
  • PortsSwiggerLab: SSRF with blacklist-based input filter
  • JS进阶-day1 作用域解构箭头函数
  • Spring AI 项目实战(十六):Spring Boot + AI + 通义万相图像生成工具全栈项目实战(附完整源码)