jenkins部署源代码到远程服务器

jenkins部署源代码到远程服务器,第1张

jenkins要想在远程服务器执行命令,发送文件等操作,必然要处理jenkins与远程机的免交互问题。

下面如何让jenkins与目标主机实现免交互。

系统管理-- 插件安装--搜索ssh --安装 Publish Over SSH

安装完成后,在jenkins端生成秘钥对(公钥id_rsa.pub 私钥id_rsa)

输入一次密码,以后就免密了。输入完可以用ssh 登陆试一下。

我们以最简单的一个例子来演示,部署一个Html页面到远程服务器的nginx网站目录下,实现页面上线。

首先,刚才jenkins配置ssh插件,注意填写远程服务器信息的那里的remote directory这个地方指的发送到远程服务器的哪个目录下。

在job配置中

上图的配置就是,将jenkins上的项目文件init.html发送到远端主机192.168.1.112的/var/www/html下

保存,退出。

远端主机的nginx配置:

点击构建。

结果:部署成功

例子比较简单,后期会更新java的部署过程。

``ssh-keygen -t rsa -C “您的邮箱地址”``

Your identification has been saved in /Users/you/.ssh/id_rsa.

# Your public key has been saved in /Users/you/.ssh/id_rsa.pub.

cd ~/.ssh

查看公钥

cat id_rsa.pub

复制粘贴到码云上

到本地项目文件夹下,右键点击空白处,选择Git Bash Here,进入git窗口

一波操作后的页面

whereis git

yum install -y git

git version

eg: cd /home/www/test

git init

git config --global user.name "您的用户名称"

git config --global user.email "您的邮箱地址"

git remote add origin 自己的仓库地址

eg:git remote add origin https://gitee.com/***/**.git

ssh -v git@gitee.com 

然后输入 yes

我拉取的是master分支

git pull origin master

如果拉文件的时候报这个错误,那么我们需要生成ssh公钥

ssh-keygen -t rsa -C"xxxxx@xxxxx.com"

查看当前公钥,并且将公钥添加到码云后台的ssh公钥中

git branch --set-upstream-to=origin/码云本地分支 服务器本地分支

eg:git branch --set-upstream-to=origin/master master

git config --global credential.helper store

到此、配置完成

本文章前端代码是基于vue+webpack开发的

Nginx是一款轻量级的Web 服务器/反向代理服务器

首先,webpack配置如下

在开发过程中,我们是通过npm run dev在开发环境中运行代码

如果要部署到生产环境中,可以运行npm run build进行上线打包

打包完成后,会发现项目中多了dist这个文件夹

执行结果和webpack的配置文件一致。

代码被webpack打包完成后下一步就是部署到服务器上,此文仅适合于前端代码是部署在windows操作系统的nginx服务中。

这里假设:

Windows操作系统:windows server 2008 64位

Nginx服务:nginx-1.12.2 64位

1.下载nginx-1.12.2 64位解压,假设nginx-1.12.2放在D:nginx-1.12.2目录中,nginx目录结构。如图下

2、前端代码放在D:nginx-1.12.2html目录中,dist目录就是刚刚前端打包完的代码。如图下

3、在D:nginx-1.12.2conf目录中,有个nginx.conf配置文件,进行编辑这个文件

4、假设前端的端口号为8082,如果端口号被占用,请修改为其它端口号。后台服务访问地址http://192.168.121.**:8080,

5、打开cmd控制台,进入目录D:nginx-1.12.2中,用start nginx命令启动服务,然后用tasklist /fi "imagename eq nginx.exe",查看nginx服务是否启动。

4、如果改变配置文件时,需要用nginx -s reload 命令重启nginx工作进程。

5、关闭服务

nginx -s stop 

nginx -s quit 安全关闭 

taskkill /F /IM nginx.exe >nul 关闭所有nginx服务


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/660849.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-25
下一篇2023-07-25

发表评论

登录后才能评论

评论列表(0条)

    保存