Jenkins-超级简单部署

重点:可能会缺少一些环境,可以自己安装,都很简单,难的话我会记下来

持续集成(CI)

持续集成(Continuous Integration)指的是频繁地将代码集成到主干。它的好处主要有:

  • 快速发现错误,每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易
  • 防止分支大幅偏离主干,如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大

持续交付(CD)

持续交付(Continuous Delivery)指的是频繁地将软件的新版本,交付给质量团队或者用户,以供评审。如果评审通过,代码就进入生产阶段。

持续交付可以看作持续集成的下一步,它强调的是,不管怎么更新,软件是随时随地可以交付的,

持续部署

持续部署(Continuous deployment)是持续交付的下一步,指的是代码通过评审以后,自动部署到生产环境。

持续部署的目标是,代码在任何时刻都是可部署的,可以进入生产阶段。

持续部署的前提是能自动化完成测试、构建、部署等步骤。

Jenkins

Jenkins

Ubuntu安装

echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] <https://pkg.jenkins.io/debian-stable> binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null

// 更新包列表
sudo apt-get update

// 安装Jenkins和Java环境
sudo apt-get install jenkins openjdk-17-jre

// 检查安装状态
sudo systemctl status jenkins

// 如果你遇到关于 GPG 密钥的错误,请确保密钥已正确安装。你可以尝试手动添加 GPG 密钥:
wget -q -O - <https://pkg.jenkins.io/debian/jenkins.io.key> | sudo gpg --dearmor -o /usr/share/keyrings/jenkins-keyring.asc

修改端口

// 打开文件
sudo nano /etc/default/jenkins
// 修改端口号
HTTP_PORT=8081
// 重新加载配置
sudo systemctl daemon-reload
// 重启服务
sudo systemctl restart jenkins
// 检查服务状态
sudo ufw allow 8081

配置SSH

登录 jenkins 服务器,执行 “ssh-keygen”:

这里会让你选择一个秘钥生成存放的路径,我使用了默认的/root/.ssh/id_rsa, 还有让你这是一个 “passphrase”,可以不加密码直接回车。我设置了密码,比如 “testssh”。

生成成功后,进入到/root/.ssh 目录下查看是否有秘钥文件:

在插件市场中安装Publish Over SSH

在 jenkins 的 “Configure System”(系统配置)中拉到最下面,找到 “Publish over SSH” 添加要远程的服务器,并进行配置。

再点击测试看是否有Success

然后看这个视频

本机详细演示Jenkins+Docker自动化部署springboot项目_哔哩哔哩_bilibili

运行Jar

选择构建一个Maven项目

Shell语句

# 杀死旧的应用程序进程
pkill -f dull-admin-0.0.1-SNAPSHOT.jar

# 防止 Jenkins 杀死新启动的进程
export BUILD_ID=dontKillMe

# 启动新的应用程序实例
nohup java -jar dull-admin/target/dull-admin-0.0.1-SNAPSHOT.jar > output.log 2>&1 &

部署前端

选第一个

配置就和之前的差不多,要修改的只有一个执行的shell

# 构建步骤
node -v
npm -v
rm -rf node_modules
npm install
npm run build

# 调试信息
echo "当前目录:$(pwd)"
echo "目录内容:"
ls -l
echo "dist目录内容:"
ls -l dist

# 复制构建产物,这里我偷懒了,直接将构建完的产物移动到我部署的文件夹中
# 这里我使用的宝塔构建的项目,所以要将角色换成www
sudo rsync -av --chown=www:www dist/ /www/wwwroot/www.dullfan.cn/

# (可选)修改文件所有者和权限
sudo chown -R www:www /www/wwwroot/www.dullfan.cn/
sudo chmod -R 755 /www/wwwroot/www.dullfan.cn/

可能上方的代码要显示输入密码,这个时候要去修改文件了

打开sudoers文件

sudo visudo

添加Jenkins用户权限,在文件中添加

jenkins ALL=(ALL) NOPASSWD: ALL

这条命令表示允许 jenkins 用户在使用 sudo 命令时无需输入密码。

Ctrl + O然后按 Enter 确认保存。按 Ctrl + X 退出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值