jenkins 安装及使用

Linux环境安装流程

无忧tool机上的kenkins 重启

切root账号

1. systemctl start jenkins   貌似无效
2. cd /usr/local/jenkins;    ./jenkins-ctl.sh start

 

准备工作

准备java, jdk

java -verison 查看版本

root@servname:/var/www# java -version
openjdk version "1.8.0_161"
OpenJDK Runtime Environment (build 1.8.0_161-b14)
OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)

官网地址下载最新版本
https://wiki.jenkins.io/display/JENKINS/Installing+Jenkins+on+Red+Hat+distributions#InstallingJenkinson

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
sudo yum install jenkins

配置文件目录

/etc/sysconfig/jenkins

修改默认端口号

JENKINS_PORT=“8080” #端口号
修改了端口,阿里云默认是telnet不通的, 需要到阿里云控制台开启端口监听

启动jenkins服务

service jenkins restart

安装引导

解析一个域名到jenkins项目目录或直接 ip:8080 访问, 出现jenkins引导安装流程,在下面目录复制管理员密码,到下一步

选择推荐插件

进入到安装流程 , 会比较慢

创建管理账号

配置第一个项目

自由风格软件项, 创建

重点是配置
git 拉取tag的插件
Git Parametver ( Adds ability to choose from git repository revisions or tags )

配置 – 构建环境 – Create Delivery Pipeline version 需要的插件,不懂是什么?
Delivery Pipeline

Gitlab Hook Plugin 这个还不清楚

构建

 

 

配置遇到的坑

1.配置git仓库报错

 

Failed to connect to repository : Command “git -c core.askpass=true ls-remote -h git@XXXXX:XXXX/XXXX.git HEAD” returned status code 128:

 

解决办法

https://blog.csdn.net/chenxing109/article/details/84787371

https://www.jianshu.com/p/ed5aab89ce99

原来我用的ssh密钥一直都是我自己用户生成的。其实在Jenkins系统使用的都是Jenkins这个系统帐号的。

那就换到jenkins这个帐号下生成个新的ssh密钥,在上传到git的服务器就好了。

 

修改/etc/passed,

jenkins , /bin/false

su jenkins 

ssh-keygen -t rsa -C "jenkins@qixiu110.com"  //没有家目录 , 默认生成到   /var/lib/jenkins/.ssh/id_rsa.pub

cat /var/lib/jenkins/.ssh/id_rsa.pub  //将公钥配置到gitlab

/usr/bin/git ls-remote -h git@gitlab.qixiu.com:qixiu/book.git HEAD  //这里不报错, jenkins配置git仓库应该就没问题了

 

 

2. 参数化构建过程 , 没有这个选项 ?

安装 创建 Extended Choice Parameter

 

3. ansible-play 参数 –private-key 指定一直无效 ?

暂时是去掉这个参数, jenkins生成id_rsa  ,然后copy到online服务器的

ssh-copy-id -i /var/lib/jenkins/.ssh/id_rsa.pub qxdev@000.0.12.00

这样上传到正式服务器, 文档权限都是qxdev, 而且不能用root账号 执行puck程序, 会提示无权限

 

 

发表评论