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

昌平网站建设哪家强wordpress按装教程

昌平网站建设哪家强,wordpress按装教程,网站规划主要内容,丹东做网站的公司Gitlab runner的使用示例#xff08;二#xff09;#xff1a;Maven Docker 自动化构建与部署 在本篇文章中#xff0c;我们将详细解析一个典型的 GitLab CI/CD 配置文件#xff08;gitlab-ci.yml#xff09;#xff0c;该文件主要用于通过 Maven 构建 Java 应用…Gitlab runner的使用示例二Maven Docker 自动化构建与部署 在本篇文章中我们将详细解析一个典型的 GitLab CI/CD 配置文件gitlab-ci.yml该文件主要用于通过 Maven 构建 Java 应用并使用 Docker 容器化部署。 配置文件整体长这样 image: maven:3.8.4-openjdk-17stages:- build- deployvariables:DOCKER_IMAGE: achun-gallery-imageDOCKER_CONTAINER_NAME: achun-gallery-container# 构建阶段Maven 打包 build-job:stage: buildscript:- mvn clean install -DskipTests- cd achun-gallery-app- mvn clean package -DskipTeststags:- m5_serviceonly:- mainartifacts:paths:- achun-gallery-app/target/**# 部署阶段使用 Docker 启动项目 deploy-job:stage: deployscript:- docker stop $DOCKER_CONTAINER_NAME || true- docker rm $DOCKER_CONTAINER_NAME || true- cd achun-gallery-app- docker build -t $DOCKER_IMAGE .- docker run -d -v /data/logs/:/data/logs -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro --restart always --name $DOCKER_CONTAINER_NAME -p 9519:9519 $DOCKER_IMAGEtags:- m5_serviceonly:- maindependencies:- build-jobartifacts:paths:- achun-gallery-app/target/**下面会逐步解释各个部分。 1. 基本镜像选择 image: maven:3.8.4-openjdk-17在 GitLab CI/CD 中image 用于指定 CI/CD 流水线运行时使用的基础镜像。这里我们选择的是 maven:3.8.4-openjdk-17这是一个预装了 Maven 3.8.4 和 OpenJDK 17 的官方 Docker 镜像适合构建基于 Java 的 Maven 项目。 解释 Maven负责项目的构建与管理执行 mvn 命令。OpenJDK 17项目使用的 Java 版本确保代码可以在此 JDK 上编译和运行。 2. 定义阶段stages stages:- build- deploy在 GitLab CI/CD 中stages 定义了流水线的阶段。这个配置文件中包含两个阶段 build构建 Java 项目。deploy部署已经构建的项目。 流水线会按顺序依次执行这些阶段。 3. 定义全局变量 variables:DOCKER_IMAGE: achun-gallery-imageDOCKER_CONTAINER_NAME: achun-gallery-containervariables 定义了 CI/CD 流水线中使用的全局变量。在这个配置文件中 DOCKER_IMAGE指定 Docker 镜像的名称为 achun-gallery-image。DOCKER_CONTAINER_NAME指定 Docker 容器的名称为 achun-gallery-container。 这些变量会在后续的 deploy 阶段使用方便代码维护和复用。 4. 构建阶段Maven 打包 build-job:stage: buildscript:- mvn clean install -DskipTests- cd achun-gallery-app- mvn clean package -DskipTeststags:- m5_serviceonly:- mainartifacts:paths:- achun-gallery-app/target/**解释 stage指定该作业属于 build 阶段。script定义构建项目时执行的命令 mvn clean install -DskipTests清理项目、安装依赖并编译项目跳过测试。cd achun-gallery-app进入子目录 achun-gallery-app这是项目的主要代码所在目录。mvn clean package -DskipTests再次清理项目并打包应用程序的可执行文件如 .jar 文件跳过测试。 tags指定该作业运行在哪些 Runner 上此处 m5_service 是 GitLab Runner 的标签表明该作业将被分配到具备此标签的 Runner 上运行。only限制该作业仅在 main 分支上执行。artifacts指定构建产物的路径。在这里它保存了 achun-gallery-app/target/ 目录下的所有文件主要是打包后的 .jar 文件供后续的 deploy 阶段使用。 Maven 命令 mvn clean install会下载依赖项并将应用编译为 .class 文件。mvn package创建最终的可执行 .jar 文件用于部署。 5. 部署阶段使用 Docker 启动项目 deploy-job:stage: deployscript:- docker stop $DOCKER_CONTAINER_NAME || true- docker rm $DOCKER_CONTAINER_NAME || true- cd achun-gallery-app- docker build -t $DOCKER_IMAGE .- docker run -d -v /data/logs/:/data/logs -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro --restart always --name $DOCKER_CONTAINER_NAME -p 9519:9519 $DOCKER_IMAGEtags:- m5_serviceonly:- maindependencies:- build-jobartifacts:paths:- achun-gallery-app/target/**解释 stage此作业属于 deploy 阶段。script定义了部署的命令步骤 docker stop $DOCKER_CONTAINER_NAME || true尝试停止正在运行的同名容器。如果容器不存在则忽略错误。docker rm $DOCKER_CONTAINER_NAME || true删除同名容器确保新的容器可以被启动。cd achun-gallery-app进入项目目录。docker build -t $DOCKER_IMAGE .基于当前目录的 Dockerfile 构建一个新的 Docker 镜像名称为 achun-gallery-image。docker run -d -v /data/logs/:/data/logs -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro --restart always --name $DOCKER_CONTAINER_NAME -p 9519:9519 $DOCKER_IMAGE运行一个新的 Docker 容器指定容器的日志路径和时间设置并将容器端口 9519 映射到主机的 9519 端口。 详细说明 docker stop/rm先停止并移除同名的现有容器避免名称冲突。 docker build使用当前目录中的 Dockerfile 构建新的 Docker 镜像。 docker run -d后台运行容器。-v挂载日志目录和时间设置确保容器中的日志可以与主机同步并保持主机的时区设置。--restart always保证 Docker 容器异常退出后自动重启。-p 9519:9519将容器的端口映射到主机上允许外部访问应用。 tags同样使用 m5_service 标签来指定 Runner。 only限制部署阶段只在 main 分支上执行确保代码已经被合并到主分支后才会进行生产环境的部署。 dependencies定义作业的依赖关系deploy-job 依赖于 build-job确保部署是在构建成功后进行的。 artifacts再一次定义打包产物的路径以确保 Docker 部署时可以获取到正确的构建文件。 总结 这个 GitLab CI/CD 配置文件为 Java 项目定义了一个自动化的构建和部署流程。通过 Maven 进行代码编译和打包再通过 Docker 容器化应用并在服务器上启动。整个过程包含了项目的编译、打包、镜像构建与容器部署自动化程度高且维护方便。 核心步骤 构建阶段利用 Maven 清理、编译并打包项目。部署阶段使用 Docker 镜像化应用并启动容器映射日志和时间设置确保应用的持久运行。 通过 GitLab CI/CD 自动化管道我们可以确保项目的持续集成与交付CI/CD大大提升开发和运维效率。 参考链接 GitLab CI/CD 官方文档Maven 官方文档Docker 官方文档
http://www.dnsts.com.cn/news/56648.html

相关文章:

  • 网站怎做百度代码统计网站发布的方法有几种
  • 如何建立本站站点网站建设网站网页模板
  • ps软件推荐常州市网站优化
  • 淄博企业网站建设哪家专业国外包装设计网站
  • 网站空间年费WordPress模板资源下载站
  • react网站开发实战制作网页的工具主要有哪些
  • 常德规划建设局网站苏州姑苏区专业做网站
  • 网站建设技术方面的论文手绘风网站
  • 什么网站做全景效果图好企业建设网
  • 技术支持 骏域网站建设专家佛山做家政的在哪些网站推广
  • 效果好的手机网站建设深圳做义工的网站
  • 厂字型布局网站网站未备案会怎么样
  • 网站管理平台有哪些跨境电商网站模板
  • 电子商务网站建设与管理课后习题网络营销的特点主要有
  • 建一个o2o网站织梦的手机端网站
  • 南京比较有名的广告公司seo计费系统源码
  • 寿宁县建设局网站免费wordpress网站
  • 网站开发原型 图中国制造网
  • 福建省住房和建设厅网站玩具外贸好做吗
  • 协和医院网站建设目标网站策划主要做什么工作
  • vs2010网站开发网站浮动条
  • 政务中心建设网站wordpress文章上传视频
  • 优酷土豆网站建设网站建设行吗
  • 嘉兴高端网站定制wordpress图片浏览器
  • 门户网站介绍哈尔滨房产信息网官网
  • 南阳在线网站制作制作网页的详细步骤
  • 西宁做网站君博领先毕业设计做企业门户网站
  • 西安seo网站关键词优化南昌网站建设方案推广
  • 徐州市建设工程质监站网站济南网站建设公司
  • 昆山网站建设官网深圳百度seo培训