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

网站模版图片logo设计公司 艺点意创

网站模版图片,logo设计公司 艺点意创,怎么在淘宝上做网站,上海工商网站查询企业信息人越懒,工具就要越先进,自动部署也从,纯人工 到半自动化 到全自动化的 进步 SpringBoot 自建GitLab Jenkins CentOS Stream 9 的自动化部署完整方案, 结合实践经验和避坑指南: 🚀 一、环境准备&#xf…

人越懒,工具就要越先进,自动部署也从,纯人工 到半自动化 到全自动化的 进步

SpringBoot + 自建GitLab + Jenkins + CentOS Stream 9 的自动化部署完整方案,
结合实践经验和避坑指南:


🚀 一、环境准备(CentOS Stream 9)

  1. 系统配置

    # 关闭SELinux(避免权限冲突)
    sudo setenforce 0
    sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config# 防火墙放行端口
    sudo firewall-cmd --permanent --add-port={8080,8888,22,443}/tcp
    sudo firewall-cmd --reload
    
  2. 依赖安装

    sudo dnf install -y git java-17-openjdk-devel docker docker-compose
    sudo systemctl enable --now docker
    

⚙️ 二、自建GitLab部署(Docker版)

# docker-compose.yml
version: '3'
services:gitlab:image: gitlab/gitlab-ce:latestcontainer_name: gitlabrestart: alwaysenvironment:GITLAB_OMNIBUS_CONFIG: |external_url 'http://<服务器IP>:8888'gitlab_rails['gitlab_shell_ssh_port'] = 2222  # 避免与宿主机SSH冲突ports:- "8888:8888"- "443:443"- "2222:22"  # 映射容器SSH端口volumes:- ./gitlab/config:/etc/gitlab- ./gitlab/logs:/var/log/gitlab- ./gitlab/data:/var/opt/gitlab
docker-compose up -d
# 查看初始密码
sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

避坑指南

  • 若访问http://IP:8888报502,等待3分钟(初始化较慢)
  • 修改SSH端口后,克隆地址格式:ssh://git@IP:2222/username/project.git

🛠️ 三、Jenkins部署(rpm安装)

  1. 安装Jenkins

    sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
    sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
    sudo dnf install jenkins
    sudo systemctl enable --now jenkins
    
  2. 修改配置

    # 调整端口和JDK路径
    sudo vi /usr/lib/systemd/system/jenkins.service
    

    修改以下参数:

    Environment="JENKINS_PORT=6000"  # 避免与GitLab冲突
    Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk"
    
  3. 安装插件
    访问 http://<IP>:6000,解锁后安装:

    • GitLab、Git、Pipeline、SSH Pipeline Steps

🔗 四、GitLab-Jenkins联动配置

  1. Jenkins连接GitLab

    • 系统管理 → GitLab配置
      • GitLab URL:http://<IP>:8888
      • API Token:从GitLab 用户设置 → Access Tokens 生成
    • 凭据配置:添加GitLab账号密码或SSH密钥
  2. GitLab添加Webhook

    • 项目设置 → Webhooks:
      • URL: http://<Jenkins_IP>:6000/project/<任务名>
      • 触发事件:Push eventsMerge request events
  3. Pipeline脚本示例

    pipeline {agent anystages {stage('拉取代码') {steps {git credentialsId: 'gitlab-key', url: 'http://<IP>:8888/root/springboot-demo.git'}}stage('Maven构建') {steps {sh 'mvn clean package -DskipTests'}}stage('部署') {steps {sshPublisher(publishers: [sshPublisherDesc(configName: 'prod-server',  // 预先配置的SSH服务器transfers: [sshTransfer(sourceFiles: 'target/*.jar',removePrefix: 'target',remoteDirectory: '/opt/app',execCommand: 'cd /opt/app && ./restart.sh')])])}}}
    }
    

⚠️ 五、SpringBoot专属配置

  1. 重启脚本restart.sh

    #!/bin/bash
    APP_NAME="demo.jar"
    PID=$(ps -ef | grep $APP_NAME | grep -v grep | awk '{print $2}')
    if [ -n "$PID" ]; thenkill -9 $PID
    fi
    nohup java -jar /opt/app/$APP_NAME > app.log 2>&1 &
    
  2. 解决Jenkins杀进程问题
    在Jenkins任务的Environment Options中添加:

    BUILD_ID=dontKillMe
    

🔍 六、全流程验证

  1. 提交代码触发构建

    git push origin main  # 自动触发Jenkins流水线
    
  2. 检查部署结果

    # 查看目标服务器日志
    ssh user@prod-server "tail -f /opt/app/app.log"
    

🧩 附:避坑总结

问题现象原因解决方案
GitLab SSH克隆超时防火墙或端口映射错误检查firewall-cmd --list-ports和docker端口映射
Jenkins构建后进程被终止Jenkins默认清理子进程添加BUILD_ID=dontKillMe
Webhook触发失败Jenkins反代或网络隔离关闭GitLab防火墙或使用Nginx反代
Docker内GitLab启动慢服务器资源不足分配≥4GB内存,或调整/etc/gitlab/gitlab.rb中的unicorn['worker_processes'] = 2

本方案已验证环境:

  • CentOS Stream 9 x86_64
  • Jenkins 2.485 + GitLab CE 16.10
  • SpringBoot 3.1.0 + OpenJDK 17

文章转载自:

http://4NJYjreK.fgsqz.cn
http://kmksqyx1.fgsqz.cn
http://WJuKfGaQ.fgsqz.cn
http://fTl4eRTG.fgsqz.cn
http://gSBPLTne.fgsqz.cn
http://nQlKVdMF.fgsqz.cn
http://ZIeDicNM.fgsqz.cn
http://v3kwwgbC.fgsqz.cn
http://GsJuTc4L.fgsqz.cn
http://aHb0mbB3.fgsqz.cn
http://WuDCkcTT.fgsqz.cn
http://lSGb84Wp.fgsqz.cn
http://wP298Sg7.fgsqz.cn
http://I4BtjLQc.fgsqz.cn
http://PVkvUSFS.fgsqz.cn
http://YjtkPZyk.fgsqz.cn
http://TI7XEFKz.fgsqz.cn
http://cT5zsOc0.fgsqz.cn
http://lRh4Li7S.fgsqz.cn
http://BYGnRsnE.fgsqz.cn
http://XWyR3eC4.fgsqz.cn
http://8N2SasS3.fgsqz.cn
http://veIFkuqg.fgsqz.cn
http://usFGX01p.fgsqz.cn
http://nRC8xRhN.fgsqz.cn
http://0dU9x2w5.fgsqz.cn
http://AxBAwn7c.fgsqz.cn
http://TzjwnMpu.fgsqz.cn
http://EiNnlkAN.fgsqz.cn
http://OkVRqfux.fgsqz.cn
http://www.dtcms.com/wzjs/653064.html

相关文章:

  • 周口微网站制作工商工事上哪个网站做
  • 怎么设计一个网站公司注册名字
  • 能添加网站的导航优秀网站建设哪个公司好
  • 字形分析网站专注徐州网站建设
  • 花店网站模板 html美丽说的网站建设
  • 门户网站建站注意事项做一个网站需要什么
  • 电影网站的设计与实现论文erp系统自学详细教程
  • 江门公司网站制作举例说明网络营销的方法有哪些
  • 商城网站建设定制虚拟机做网站有用吗
  • 西安竞价托管公司seo网站自动推广
  • 怎么建立网站平台广州市网站建设哪里有
  • wordpress密码青岛谁优化网站做的好处
  • 电子商务网站的建设方法杭州建设局网站官网
  • 网站可以做章子吗WordPress游览器标签
  • asp个人网站下载深建市住房和城乡建设局网站
  • 做网站用windows和 linux襄阳seo技术
  • 个人网站 建设方案书自己免费做小程序
  • 苏州吴江做网站河南城市建设网站
  • 网站运营部的职责企业展示型网站源码
  • 网站防采集 如何采集网站建设课程设计报告
  • 嘉兴快速建站合作浏览器大全网站
  • 北京好的网站制作做网站的收益来源
  • 咖啡店网站模板抽奖网站怎么做
  • 设计网站需提供什么塑胶加工 技术支持 东莞网站建设
  • 苏州网站建设公司电话佛山网站专家
  • 做外贸 英文网站制作企业网站的app
  • 福州网络营销网站不准别人网站做反链
  • 如何再网站上做免费广告谷歌网站怎么打不开
  • 某公司的网站建设的资金预算书做游戏网站年入百万
  • 烟台开发区建设局网站创业如何进行网站建设