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

网站首页的动态怎么做自制网页

网站首页的动态怎么做,自制网页,客套企业名录搜索软件,网站搭建官网JenkinsDockerHarbor快速部署Spring Boot项目详解 Jenkins、Docker和Harbor是现代DevOps流程中的核心工具,结合使用可以实现自动化构建、测试和部署。下面我将详细介绍如何搭建这个集成环境。 一、各工具的核心作用 Jenkins 自动化CI/CD工具,负责拉取代…

Jenkins+Docker+Harbor快速部署Spring Boot项目详解

Jenkins、Docker和Harbor是现代DevOps流程中的核心工具,结合使用可以实现自动化构建、测试和部署。下面我将详细介绍如何搭建这个集成环境。

一、各工具的核心作用

  1. Jenkins

    • 自动化CI/CD工具,负责拉取代码、编译、测试、构建Docker镜像并部署
    • 提供可视化界面管理Pipeline
  2. Docker

    • 容器化平台,将应用及其依赖打包成独立容器
    • 确保环境一致性,提高部署效率
  3. Harbor

    • 企业级Docker镜像仓库,存储和管理Docker镜像
    • 支持权限控制、镜像复制、安全扫描等功能

二、环境准备

  1. 服务器规划

    • Jenkins服务器:2核4G+,用于运行Jenkins服务
    • Harbor服务器:4核8G+,用于存储Docker镜像
    • 应用服务器:根据项目需求配置,运行Docker容器
  2. 软件安装

    • 在所有服务器安装Docker:
      curl -fsSL https://get.docker.com | bash
      systemctl enable docker && systemctl start docker
      
    • 在Jenkins服务器安装Docker Compose:
      curl -L "https://github.com/docker/compose/releases/download/v2.16.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
      chmod +x /usr/local/bin/docker-compose
      

三、Harbor安装与配置

  1. 下载并解压Harbor

    wget https://github.com/goharbor/harbor/releases/download/v2.8.3/harbor-offline-installer-v2.8.3.tgz
    tar xvf harbor-offline-installer-v2.8.3.tgz -C /opt/
    cd /opt/harbor
    
  2. 配置Harbor

    cp harbor.yml.tmpl harbor.yml
    vi harbor.yml
    

    修改以下关键配置:

    hostname: harbor.example.com  # 修改为你的域名或IP
    http:port: 80
    harbor_admin_password: Harbor12345  # 管理员密码
    data_volume: /data/harbor  # 数据存储路径
    
  3. 生成证书(可选,推荐使用HTTPS)

    mkdir -p /data/cert
    openssl req -newkey rsa:4096 -nodes -sha256 -keyout /data/cert/harbor.key -x509 -days 365 -out /data/cert/harbor.crt
    

    更新harbor.yml启用HTTPS:

    https:port: 443certificate: /data/cert/harbor.crtprivate_key: /data/cert/harbor.key
    
  4. 安装Harbor

    ./install.sh
    
  5. 验证Harbor

    • 访问http://harbor.example.com
    • 使用admin/Harbor12345登录

四、Jenkins安装与配置

  1. 使用Docker安装Jenkins

    mkdir -p /data/jenkins_home
    chown -R 1000:1000 /data/jenkins_home  # Jenkins用户UID为1000docker run -d \--name jenkins \-p 8080:8080 \-p 50000:50000 \-v /data/jenkins_home:/var/jenkins_home \-v /var/run/docker.sock:/var/run/docker.sock \-v $(which docker):/usr/bin/docker \jenkins/jenkins:lts
    
  2. 初始化Jenkins

    • 访问http://jenkins-server:8080
    • 获取初始密码:
      docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
      
    • 安装推荐插件,创建管理员账号
  3. 安装必要插件

    • Docker Pipeline
    • Pipeline
    • Git
    • Credentials Plugin

五、Jenkins与Harbor集成

  1. 在Jenkins中添加Harbor凭证

    • 进入Jenkins → 凭据 → 系统 → 全局凭据
    • 添加用户名密码凭证,用户名和密码为Harbor的账号密码
  2. 配置Docker Host

    • 进入Jenkins → 管理Jenkins → 系统设置 → Docker
    • 添加Docker Host:unix:///var/run/docker.sock

六、Spring Boot项目配置

  1. 添加Dockerfile
    在Spring Boot项目根目录下创建Dockerfile

    FROM openjdk:17-jdk-slim
    VOLUME /tmp
    ARG JAR_FILE=target/*.jar
    COPY ${JAR_FILE} app.jar
    ENTRYPOINT ["java","-jar","/app.jar"]
    
  2. 添加Jenkinsfile
    在项目根目录添加Jenkinsfile

    pipeline {agent anyenvironment {DOCKER_IMAGE = "harbor.example.com/devops/spring-boot-demo"DOCKER_TAG = "${env.BUILD_NUMBER}"HARBOR_CREDS = credentials('harbor-credentials')}stages {stage('Build') {steps {sh 'mvn clean package -DskipTests'}}stage('Build Docker Image') {steps {sh "docker build -t $DOCKER_IMAGE:$DOCKER_TAG ."}}stage('Push to Harbor') {steps {sh "docker login -u $HARBOR_CREDS_USR -p $HARBOR_CREDS_PSW harbor.example.com"sh "docker push $DOCKER_IMAGE:$DOCKER_TAG"sh "docker tag $DOCKER_IMAGE:$DOCKER_TAG $DOCKER_IMAGE:latest"sh "docker push $DOCKER_IMAGE:latest"}}stage('Deploy') {steps {sh """ssh user@deploy-server << EOFdocker login -u $HARBOR_CREDS_USR -p $HARBOR_CREDS_PSW harbor.example.comdocker stop spring-boot-demo || truedocker rm spring-boot-demo || truedocker run -d --name spring-boot-demo -p 8080:8080 $DOCKER_IMAGE:$DOCKER_TAGEOF"""}}}
    }
    

七、Jenkins Pipeline配置

  1. 创建新Pipeline项目

    • 进入Jenkins → 新建任务 → 输入名称 → 选择Pipeline → 确定
  2. 配置Pipeline

    • 进入项目配置 → Pipeline部分
    • 定义方式选择"Pipeline script from SCM"
    • SCM选择Git,填写项目Git仓库地址
    • 指定Jenkinsfile路径

八、关键配置说明

  1. Harbor关键配置

    • harbor.yml中的hostname必须正确配置
    • 生产环境建议启用HTTPS
    • 可配置磁盘配额和垃圾回收策略
  2. Jenkins关键配置

    • 确保Jenkins用户有访问Docker的权限
    • 正确配置Harbor凭证
    • 确保Jenkins服务器可以SSH到部署服务器
  3. Jenkinsfile关键参数

    • DOCKER_IMAGE:镜像名称,格式为Harbor地址/项目名/镜像名
    • DOCKER_TAG:建议使用构建号或Git提交哈希
    • HARBOR_CREDS:Harbor凭证ID

九、优化建议

  1. 添加测试阶段
    Build阶段后添加测试步骤:

    stage('Test') {steps {sh 'mvn test'}post {always {junit 'target/surefire-reports/*.xml'}}
    }
    
  2. 使用Docker Compose部署
    创建docker-compose.yml并使用它部署:

    version: '3'
    services:spring-boot-demo:image: harbor.example.com/devops/spring-boot-demo:${BUILD_NUMBER}ports:- "8080:8080"environment:- SPRING_PROFILES_ACTIVE=prod
    
  3. 添加质量检测
    集成SonarQube进行代码质量检测:

    stage('Code Quality') {steps {sh 'mvn sonar:sonar'}
    }
    

十、故障排除

  1. Docker连接问题

    • 确保Jenkins容器可以访问宿主机的Docker daemon
    • 检查/var/run/docker.sock权限
  2. Harbor认证失败

    • 检查Harbor凭证配置是否正确
    • 确保Harbor服务器可以访问
    • 如果使用HTTPS,确保证书已正确配置
  3. 部署失败

    • 检查部署服务器SSH配置
    • 确保部署服务器可以访问Harbor
    • 检查容器运行日志:docker logs spring-boot-demo
http://www.dtcms.com/wzjs/295014.html

相关文章:

  • 设计师常用的灵感网站象山关键词seo排名
  • 网站怎么做站群企业关键词优化价格
  • 数据需求 网站建设互联网销售包括哪些
  • 开店装修话做那个网站找工人无线网络优化工程师
  • 国外flash网站百度一下你就知道官网新闻
  • 将网站制作成app西安今日头条最新新闻
  • 百度收录网站名深圳网络营销策划公司
  • 外贸网站建设如何做百度投诉中心电话
  • 网站开发制作合同站长统计入口
  • 西安网站建设罗鑫哪个浏览器不屏蔽网站
  • 东莞市做网站的优化软件
  • 即墨有做网站的吗seo搜索引擎优化费用
  • 什么网站吸引流量代运营公司可靠吗
  • 网站换空间 百度快照倒退一年多 怎么回事seo行业
  • 百度联盟做网站赚钱吗附近有学电脑培训班吗
  • 省内注销二建 建设部网站更新慢网络推广软件哪个好
  • php网站开发接口文档湖人最新排名最新排名
  • 网站推广工具有啥百度广告标识
  • wordpress超级排版器插件广告优化师是做什么的
  • 自己怎么优化网站子域名查询工具
  • 媒体平台化搜索引擎优化seo信息
  • 网站域名哪看许昌seo推广
  • 塑胶卡板东莞网站建设支持官网排名优化方案
  • 电影网站html代码广告安装接单app
  • 教育学会网站建设项目高级搜索引擎
  • 那些网站被k恢复是怎么做的短视频seo
  • 电商网站首页字体山东百度推广代理商
  • 怎么免费建设交友网站长春seo技术
  • 洛阳制作网站的公司哪家好广州竞价托管
  • 两学一做网站专题网络销售好不好做