斗罗大陆Jenkins部署

环境准备:

OS: CentOS Linux release 7.9.2009 (Core)

关闭selinux

一,Jenkins部署

  1. 检查java环境,Jenkins由java开发需要依赖Java环境,下载的是jdk8(不是openjdk)的完整安装好的版本

[root@localhost ~]# mkdir -p /application

[root@localhost ~]# tar xf jdk-8u202-linux-x64.tar.gz -C /application/

[root@localhost ~]# ll /application/jdk1.8.0_202/

total 25988

drwxr-xr-x 2 10 143     4096 Dec 16  2018 bin

-r–r–r– 1 10 143     3244 Dec 16  2018 COPYRIGHT

drwxr-xr-x 3 10 143      132 Dec 16  2018 include

-rw-r–r– 1 10 143  5211154 Dec 12  2018 javafx-src.zip

drwxr-xr-x 5 10 143      185 Dec 16  2018 jre

drwxr-xr-x 5 10 143      245 Dec 16  2018 lib

-r–r–r– 1 10 143       40 Dec 16  2018 LICENSE

drwxr-xr-x 4 10 143       47 Dec 16  2018 man

-r–r–r– 1 10 143      159 Dec 16  2018 README.html

-rw-r–r– 1 10 143      424 Dec 16  2018 release

-rw-r–r– 1 10 143 21105955 Dec 16  2018 src.zip

-rw-r–r– 1 10 143   112724 Dec 12  2018 THIRDPARTYLICENSEREADME-JAVAFX.txt

-r–r–r– 1 10 143   153824 Dec 16  2018 THIRDPARTYLICENSEREADME.txt

 

#配置java的环境变量,追加下面的内容到/etc/profile

 

export JAVA_HOME=/application/jdk1.8.0_202

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

 

[root@localhost ~]# source /etc/profile

[root@localhost ~]# java -version

java version “1.8.0_202”

Java(TM) SE Runtime Environment (build 1.8.0_202-b08)

Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)

 

#项目需要用ant做构建,所以必须安装ant

wget https://mirrors.tuna.tsinghua.edu.cn/apache//ant/binaries/apache-ant-1.9.15-bin.tar.gz

tar xf apache-ant-1.9.15-bin.tar.gz

mv apache-ant-1.9.15 /application/

 

update /etc/profile文件

 

export ANT_HOME=/application/apache-ant-1.9.15

export JAVA_HOME=/application/jdk1.8.0_202

export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin:$ANT_HOME/bin

 

[root@localhost ~]# ant -version

Apache Ant(TM) version 1.9.15 compiled on May 10 2020

 

#安装rsync和protobuf,创建用户公钥并推送给远程服务器实现免密码rsync

1)yum install rsync -y

2)插件传送公钥略

3)宿主机安装安装protobuf:

Protocol Buffers(简称:ProtoBuf)是一种序列化数据结构的协议。
对于透过管道(pipeline)或存储资料进行通信的程序开发上是很有用的。这个方法包含一个接口描述语言,描述一些数据结构,并提供程序工具根据这些描述产生代码,用于将这些数据结构产生或解析资料流。

语言支持
proto2提供一个程序产生器,支持C++、Java和Python。

第三方实现支持JavaScript。

proto3提供一个程序产生器,支持C++、Java (包含JavaNano)、Python、Go、Ruby、Objective-C和C#.从 3.0.0 Beta 2 版开始支持JavaScript

第三方实现支持Perl、PHP、Dart、Scala和Julia.

 

安装依赖工具

yum install autoconf automake libtool curl make g++ unzip gcc-c++ -y

下载解压

wget https://github.com/protocolbuffers/protobuf/releases/download/v3.7.1/protobuf-cpp-3.7.1.tar.gz

tar xf protobuf-cpp-3.7.1.tar.gz

cd protobuf-3.7.1/

 

./autogen.sh

./configure

make

make check

sudo make install

sudo ldconfig

 

为了与程序相匹配,为protoc创建一个软连接

[root@localhost protobuf-3.7.1]# mkdir -p /home/protobuf/bin/

[root@localhost protobuf-3.7.1]# ln -s /usr/local/bin/protoc /home/protobuf/bin/

[root@localhost protobuf-3.7.1]# ll /home/protobuf/bin/protoc

lrwxrwxrwx 1 root root 21 Jun 10 18:04 /home/protobuf/bin/protoc -> /usr/local/bin/protoc

[root@localhost protobuf-3.7.1]#  /home/protobuf/bin/protoc –version

libprotoc 3.7.1

 

PS:编译的时候一直出错的原因是

少了/usr/local/include/google/protobuf这个目录下面的必要的文件和目录

所以一定要把这个include目录整体拷贝到/home/protobuf

 

  1. 下载安装Jenkins的rpm包

wget https://mirror.tuna.tsinghua.edu.cn/jenkins/redhat/jenkins-2.290-1.1.noarch.rpm

yum install jenkins-2.290-1.1.noarch.rpm

 

问题:

 

原因:

这个是 Jenkins 未加载到 java 环境的问题,直接到修改 Jenkins 的启动文件,并在 candiddates 参数内追加 java 的环境变量即可

 

解决:

如果使用 Jenkins rpm 包的方式安装的 Jenkin,则输入命令 “vim /etc/init.d/jenkins” ,进行修改;

如下图:

#让root运行Jenkins,否则无法执行shell脚本(很重要!!!)

[root@localhost ~]# /etc/init.d/jenkins start

Starting jenkins (via systemctl):  Warning: jenkins.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.

                                                           [  OK  ]

[root@localhost ~]# systemctl daemon-reload

[root@localhost ~]# netstat -lntp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name   

tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      861/sshd           

tcp6       0      0 :::8080                 :::*                    LISTEN      3675/java          

tcp6       0      0 :::22                   :::*                    LISTEN      861/sshd

 

#设置开机自启动

[root@localhost ~]# chkconfig jenkins on

[root@localhost ~]# chkconfig –list|grep 3:on

 

jenkins         0:off   1:off   2:on    3:on    4:on    5:on    6:off

network         0:off   1:off   2:on    3:on    4:on    5:on    6:off

 

[root@localhost ~]# rpm -ql jenkins

/etc/init.d/jenkins

/etc/logrotate.d/jenkins

/etc/sysconfig/jenkins

/usr/lib/jenkins

/usr/lib/jenkins/jenkins.war

/usr/sbin/rcjenkins

/var/cache/jenkins

/var/lib/jenkins

/var/log/Jenkins

 

访问:http://192.168.0.241:8080/

[root@localhost ~]# cat /var/lib/jenkins/secrets/initialAdminPassword

ea8534776d234e2f8d06432f56de4010

 

准备安装插件,修改原官网url(国外服务器,安装太慢,如果服务器是在国外就不用改了),更改插件Updates地址,别忘记最后修改完点击Submit

 

 

https://updates.jenkins.io/update-center.json

换成:

https://mirror.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

或者

http://mirror.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

 

还没有完,在/var/lib/jenkins/updates 里有一个default.json,里面url地址也需要改,否则不会生效。注:

sed -i ‘s/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g’ /var/lib/jenkins/updates/default.json && sed -i ‘s/http:\/\/www.google.com/https:\/\/www.baidu.com/g’ /var/lib/jenkins/updates/default.json           

systemctl restart jenkins

 

 

安装开发测试环境下需要的插件

0) Localization: Chinese (Simplified) 汉化

  • Ant
  • Extended Choice Parameter , Workspace Cleanup

3) Subversion, SVN 1.4 Compatibility, Subversion Workspace Cleaner

4) Publish Over SSH

5) DingTalk, Dingding JSON Pusher, SSH server, Extra Columns,SSH

6)Thinbackup

 

遇到的问题:

1)Jenkins远程执行shell出现java: command not found

2)由于Jenkins的java启动内存太小,出错了

同样修改jenkins的配置文件,修改JAVA_OPTIONS参数

修改/etc/init.d/jenkins  启动文件

JENKINS_JAVA_OPTIONS=”-Xms256m -Xmx512m -Xmn256m -XX:MaxMetaspaceSize=256m -XX:MaxDirectMemorySize=128m -Dhudson.util.ProcessTree.disable=true -Djava.awt.headless=true”

斗罗大陆Jenkins部署
0 0 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
Scroll to top
0
Would love your thoughts, please comment.x
()
x