银河麒麟系统 jenkins docker 部署 自动化打包部署git 项目
Jenkins 是一个开源的自动化服务器,主要用于实现 持续集成(CI) 和 持续交付/部署(CD),其核心作用在于通过自动化流程提升软件开发和交付的效率与质量
一、环境准备 1. 安装 Docker(如已安装可跳过)
sudo yum install -y docker
sudo systemctl enable docker
sudo systemctl start docker
//安装完成之后可以验证下是否成功
docker -v

二、创建 Jenkins 数据目录并设置权限
mkdir -p /data/jenkins_home
chown -R 1000:1000 /data/jenkins_home
chmod -R 755 /data/jenkins_home
三、关闭 SELinux(银河麒麟系统限制)
setenforce 0
# 永久关闭(可选)
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
四、启动 Jenkins 容器(推荐带 --privileged)
//安装
docker pull jenkins/jenkins:lts
//启动
docker run -d \ --name jenkins \ --network host \ --privileged \
-v /data/jenkins_home:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
--memory=4g \ jenkins/jenkins:lts
//查看docker 镜像状态
docker ps
//查看日志
docker logs -f jenkins

五、获取初始密码并访问Jenkins
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
http://<你的服务器IP>:8080
六、Jenkins 初始配置建议
安装推荐插件 创建管理员账号 安装以下插件(用于 Git 和自动部署):
Git Pipeline SSH Agent Docker Pipeline Blue Ocean(可选)
完成之后设置密码,界面如下

七、配置自动化打包部署 Git 项目
示例:自动拉取 Git 仓库,构建并部署(基于 Pipeline) 新建任务 → 类型选择 “Pipeline” 在 “Pipeline 脚本” 中填入如下示例代码:
pipeline {
agent any
tools {
nodejs 'NodeJS 20.18.3'
}
environment {
DEPLOY_DIR = "/var/jenkins_home/testapp"
}
stages {
stage('拉取代码') {
steps {
git credentialsId: '6c4fe15c-278e-4d6a-bb93-327b5f605d7311',
url: 'https://gitee.com/test/test.git',
branch: 'master'
}
}
stage('安装依赖') {
steps {
sh '''
npx yarn
'''
}
}
stage('构建项目') {
steps {
sh 'npx yarn build'
}
}
stage('部署到服务器') {
steps {
sh '''
mkdir -p "$DEPLOY_DIR"
rm -rf "$DEPLOY_DIR"/*
cp -r "$WORKSPACE/dist/"* "$DEPLOY_DIR/"
'''
}
}
}
post {
always {
echo "构建+部署完成,请访问部署服务器的 5173 端口查看页面"
}
}
}
八、使用 SSH 发布部署(选配)
如果部署到远程服务器: 安装 SSH Agent 插件 在 Jenkins 中添加
“凭据(Credentials)” → SSH 密钥 在 pipeline 脚本中用 sshagent 块包裹部署逻辑
git 拉取凭据耶根据上面的方式一样获取进入系统管理


选择系统凭据创建

保存即可

这个对应

这个即可获得拉取相应项目权限
银河麒麟系统 jenkins docker 部署 自动化打包部署git 项目的更多相关文章
- 使用jenkins实现前端自动化打包部署(Linux版本)
我们这边好多小组觉得每次测试人员叫我们开发打包部署到某某个测试环境人工操作比较麻烦,因为他们想做到只专注于开发,不管这些琐碎的事.于是有个组长问我前端能不能用Jenkins去执行这一个固定的流程,因为 ...
- 解放双手 | Jenkins + gitlab + maven 自动打包部署项目
前言 记录 Jenkins + gitlab + maven 自动打包部署后端项目详细过程! 需求背景 不会偷懒的程序员不是好码农,传统的项目部署,有时候采用本地手动打包,再通过ssh传到服务器部署运 ...
- Jenkins+svn+ftp自动化发布asp.net项目
今天将自己所掌握的(Jenkins+svn+ftp自动化发布asp.net项目)知识分享给大家,希望能帮组到大家: (1)先下载Jenkins并安装: (2)安装.Net所需要的插件: (3)配置插件 ...
- Jenkins实现Android自动化打包
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/77102359 本文出自[赵彦军的博客] 1.Tomcat 进入 https://t ...
- 使用Jenkins集成和自动化打包资料
1.手把手教你利用Jenkins持续集成iOS项目 http://www.jianshu.com/p/41ecb06ae95f 2.Jenkins+ Xcode+ 蒲公英 实现IOS自动化打包和分发 ...
- Docker:银河麒麟系统/Ubuntu/arm64-离线安装Docker,配置自启
下载离线包 离线安装包地址:https://download.docker.com/linux/debian/dists/stretch/pool/stable/ 注意: amd64是处理器64位 复 ...
- jenkins自动化打包部署
请参考: http://m.blog.csdn.net/article/details?id=50518959 1.启动 jenkins.war ,打开首页 192.168.158.129:8080 ...
- 关于自动化打包部署Jenkins的使用和配置
(未写完整,待续...) 名词解释: 1.Jenkins中对svn进行操作,可通过插件和脚本两种方式进行. 插件方式 在插件管理中安装"Subversion Plug-in",即可 ...
- Asp.net Core Jenkins Docker 实现一键化部署
写在前面 在前段时间尝试过用Jenkins来进行asp.net core 程序在IIS上面的自动部署.大概的流程是Jenkins从git上获取代码 最开始Jenkins是放在Ubuntu的Docker ...
- docker + spring boot 打包 部署。
docker 安装 什么的 就不一一介绍了 不会安装百度一找一堆. 我这直接上代码. 首先你要有个spring boot项目. 然后打包.打包很简单 我打包的是 jar文件.直接在pom.xml文件里 ...
随机推荐
- spring boot配置pagehelper插件
一.maven配置 <mybatis-spring.version>2.1.1</mybatis-spring.version> <pagehelper-spring.v ...
- Tinyfox 简易教程之:Hello World!
一,什么是 Tinyfox: Tinyfox 是一款自带 HTTP 服务器的以 WebApi.WebSocket 及"动态HTML"为核心功能的超轻量级的独立性极强的高性能 Web ...
- CF607B Zuma 题解
CF607B Zuma 不知道为什么你谷会评蓝,这不是很基础的区间DP吗. Problem - 607B - Codeforces 题意简述 消除回文子串的最小次数. 思路 对于区间\([i,j]\) ...
- Maven入门,读完这篇就够了
Maven 项⽬⽣命周期 Maven从项⽬的三个不同的⻆度,定义了三套⽣命周期,三套⽣命周期是相互独⽴的,它们之间不会相互影响. 清理⽣命周期(Clean Lifecycle):该⽣命周期负责清理项⽬ ...
- AD22 PCB导出Gerber文件详细步骤
PCB绘制好,检查完成后,就可以把文件交给PCB工厂生产了,一般有两种方式: 第一种最简单就是直接将PCB文件压缩打包,发给工厂. 第二种生成Gerber等相关资料,再压缩打包,发给工厂. 这里以AD ...
- SQL取系统时间的前一个月的月份和年份
SQL SERVER 提供了一些时间函数:取当前时间:select getdate()取前一个月的时间:SELECT DATEADD(MONTH,-1,GETDATE()) 月份减一个月取年份:SEL ...
- Typecho自定义右键菜单美化和禁用F12
右键美化 使用右键美化,请禁用 HoerMouse 鼠标美化插件,否则貌似没效果 Joe主题在后台-外观设置-设置外观-全局设置-自定义<body></body>标签内填入如下 ...
- SpringSecurity - [01] 概述
Spring Security 是一个灵活且强大的工具,可以帮助你构建安全可靠的Spring应用程序.它不仅简化了认证和授权的过程,而且还提供了丰富的特性和扩展点,使得开发者可以根据项目的独特需求定制 ...
- SQL Server 2005与2008清空日志方法
SQL2008 的收缩日志 由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消:SQL2005 清空日志的方法:Backup Log D ...
- Java字节码增强实际应用在哪些方面?
Java字节码增强由于与业务应用耦合性较低,且可任意修改程序代码,所以在许多方面都有应用.也是许多公司产品实现的基础.下面大概分类一下: 1.在可观测和监控方面的应用 如果一个应用的架构服务之间的依赖 ...