吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2121|回复: 12
收起左侧

[其他转载] 【Jenkins】Jenkins启动与关闭

[复制链接]
debug_cat 发表于 2021-2-23 21:50

背景

自动化部署vue项目
前一篇博客中通过Jenkins自动部署了vue项目,但是我们启动Jenkins方式是这样启动的

java -jar jenkins.war
存在问题

当我们关闭了终端之后,Jenkins就关闭了。我们需要的是长时间运行在服务器中。

tomcat

我们启动tomcat,把war丢进去。只要tomcat不不关闭,服务就可以长时间运行了。

下载tomcat
https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.55/bin/apache-tomcat-8.5.55.tar.gz

把tomcat放到服务器的某个位置。我的位置

/root/tools/下

tar -zxvf apache-tomcat-8.5.55.tar.gz

解压之后,把我们的jenkins.war放到

/root/tools/apache-tomcat-8.5.55/webapps中

然后配置环境变量

vi /etc/profile
#tomcat envirnoment
export CATALINA_HOME=/root/tools/apache-tomcat-8.5.55
export PATH=$PATH:$CATALINA_HOME/bin
export JENKINS_HOME=/root/.jenkins

JENKINS_HOME=/root/.jenkins为什么是这个位置呢?

我们之前通过java -jar  jenkins.war启动了Jenkins之后,默认生成home目录就在这个位置。当然你可以自己改。

//应用环境变量
source /etc/profile
//启动tomcat
进入/root/tools/apache-tomcat-8.5.55/bin
sh startup.sh
//停止(如果资源有限,平时可以关闭tomcat,需要部署的时候再打开,打开Jenkins之后,占用服务器500mb内存)
sh shutdown.sh
如何访问

我们通过java -jar启动,直接通过ip地址:端口访问
现在通过tomcat处理之后。
地址变成这样子

ip:8080/jenkins
//如果有域名,可以这样
http://moonlightshadow.cn:8080/jenkins

以上~

后续计划:

自动化部署spring boot项目(博客系统后端)
自动化部署nuxtjs项目(门户)

免费评分

参与人数 3吾爱币 +2 热心值 +2 收起 理由
mo211683 + 1 + 1 这个教程很详细
moseng + 1 我很赞同!
ZY.Zhang + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| debug_cat 发表于 2021-2-23 22:10
blawhickte 发表于 2021-2-23 22:05
用docker的方式运行更方便

我也尝试过用docker来运行。
我遇到一个问题:docker中运行job的时候,比如我的项目中有一个sh脚本。在job执行时候,执行sh。
里面的环境变量和主机的环境变量不一致。
我查找了很多资料也没有解决这问题。比如:我主机安装了node环境,执行sh的时候,npm not found。我打印环境变量,没有node的环境变量,但是我在主机切换到Jenkins工作目录下执行$path,或者执行我的sh。是正常的。这个让我很困惑。whoami也是root。您知道这是什么原因吗
 楼主| debug_cat 发表于 2021-2-24 14:18
Titanic 发表于 2021-2-24 10:58
Jenkins是可以通过Web界面实现一切,如果你还是通过脚本、或者去输入命令的方式,那么你的Jenkins用法就错 ...

明白你的意思,不过,我不熟悉Jenkins,对docker也是刚刚开始用。很多东西还不知道怎么处理。
比如怎么使用流水线等等,还需要学习。
目前是自己写的项目,想做自动部署。
但是自动部署现在初步实现了。虽然不太优雅。后面工作空闲之后,会继续学习,感谢指导
blawhickte 发表于 2021-2-23 22:05
blawhickte 发表于 2021-2-23 22:21
莫问刀 发表于 2021-2-23 22:10
我也尝试过用docker来运行。
我遇到一个问题:docker中运行job的时候,比如我的项目中有一个sh脚本。在j ...

宿主机的环境变量是和容器内的环境变量不通用的, 你可以在Jenkins的web界面通过插件进行安装所需的nodeJS环境:系统管理->插件管理->选择可选插件->在上方输入框输入nodejs搜索然后进行安装
 楼主| debug_cat 发表于 2021-2-23 22:47
blawhickte 发表于 2021-2-23 22:21
宿主机的环境变量是和容器内的环境变量不通用的, 你可以在Jenkins的web界面通过插件进行安装所需的nodeJ ...

安装好了之后需要配置环境变量吗,在安装中有点慢
蟹蟹 发表于 2021-2-24 09:07
docker exec -it  容器名 bash或者sh
进入容器内部来安装配置
午夜逃跑计划 发表于 2021-2-24 10:44
自己打一个docker镜像
Titanic 发表于 2021-2-24 10:58
Jenkins是可以通过Web界面实现一切,如果你还是通过脚本、或者去输入命令的方式,那么你的Jenkins用法就错误了,Jenkins + 插件,配置好后,就已经为你实现了多数人的需求。
 楼主| debug_cat 发表于 2021-2-24 14:16
蟹蟹 发表于 2021-2-24 09:07
docker exec -it  容器名 bash或者sh
进入容器内部来安装配置

感谢提醒,有时间尝试下这个,也就是进入容器中,安装我需要的环境,这样Jenkins使用对应环境的命令就可以用了是吧。我也是第一次用Jenkins,不知道怎么处理比较合适。所以选择执行项目中自己写的sh来编译项目。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 19:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表