在Centos7上安装的Jenkins 2.303.1

命令行安装为服务

因为新版本的Jenkins的war是用java -jar启动, 并且无法后台运行, 所以要么通过screen创建一个session来运行war, 要么就直接按官网的步骤安装为服务. 下面是安装为服务的步骤:

yum install wget
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum upgrade
yum install epel-release java-11-openjdk-devel
yum install jenkins
systemctl status jenkins
systemctl is-enabled jenkins

浏览器访问后, 用提示文件的管理员密码登录, 选择默认的插件安装

这样安装的Jenkins, 会创建一个jenkins用户,

[root@vm_00 ~]# more /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
...
jenkins:x:997:994:Jenkins Automation Server:/var/lib/jenkins:/bin/false

可以看到对应的工作目录在 /var/lib/jenkins

在Jenkins中创建的项目目录, 就在 /var/lib/jenkins/jobs

在构建中需要用到的settings.xml, 可以新建 /var/lib/jenkins/settings 目录, 放到这个目录下

用war安装,以screen启动

# 安装git
yum install git
# 添加tomcat用户
useradd tomcat
passwd tomcat
# 安装JDK
cd backup/
tar xvf jdk-11.0.8_linux-x64_bin.tar.gz
tar xvf jdk-8u261-linux-x64.tar.gz
cd /opt/
mkdir jdk
cd jdk/
mv ~/backup/jdk1.8.0_261 .
mv ~/backup/jdk-11.0.8 .
ln -s jdk-11.0.8 latest
vi /etc/profile.d/sh.local
## 增加内容开始
PATH=$PATH:/opt/jdk/latest/bin
## 增加内容结束 # 将jenkins war放入 /home/tomcat/run目录后
vi scripts/start_jenkins.sh
## 内容开始
java -server -Djava.awt.headless=true -jar /home/tomcat/run/jenkins.2.277.2.war --httpPort=9090
## 内容结束 # 因为jenkins的war只能使用前台启动, 搜索到的解决方案都是用 nohup java -jar jenkins.war &, 但是这样会导致日志堆积, 估采用screen
screen -S jenkins
# 在screen session里
./scripts/start_jenkins.sh

问题和解决

启动Jenkins报NPE错误

通过安装fontconfig解决

https://github.com/AdoptOpenJDK/openjdk-docker/issues/75

yum install fontconfig

SSH Agent 出现 Host key verification failed

首先确认

  1. Jenkins的Git使用的ssh, 不需要预先记录known_hosts, 配置好就可以直接用
  2. SSH Agent必须要先在命令行下访问一下对方IP, 记录了known_hosts后, 才能正常使用

因为安装为服务的Jenkins使用的是jenkins用户, 而且是/bin/false的用户, 不能像普通用户那样登录然后ssh一下对方IP, 你需要按以下方式处理

# 以root或sudo user身份, 切换到jenkins用户
su -s /bin/bash jenkins
# 前往jenkins的home目录
cd /var/lib/jenkins/
# 查看.ssh下是否已经有known_hosts, 有的话, 是什么内容, 正常情况下, 这时候是没有对应IP记录的
cd .ssh/
more known_hosts
# 访问一下对应IP, 记录公钥
ssh 192.168.123.123
# 再次查看, 应该就有记录了
more known_hosts

在上面的操作之后, 再执行任务, SSH Agent就不会报Host key verification failed错误了.

Jenkins安装和Host key verification failed问题的处理的更多相关文章

  1. jenkins报错 Host key verification failed.

    一.Host key verification failed 问题描述 在本地windows机器上安装了jenkins,在git bash命令行窗口可以使用git pull命令,但是在jenkins ...

  2. Jenkins构建从github上克隆时,报Host key verification failed.

    首先在本地通过CMD执行git clone xxxxx时,可以成功的通过免密(SSH_KEY)克隆下来代码,但是通过Jenkins克隆时,就报如下信息: Cloning into 'GitHub'.. ...

  3. 【sublime xftp插件】 Host key verification failed ,错误处理

    错误背景: 1.CentOS7上面作为运行环境,Coding在本机的windows环境 2.在windows上安装sublime 3,然后保存代码通过xftp保存到centos7虚机上面. 3.Cen ...

  4. Host key verification failed解决

    SSH 登录失败:Host key verification failed 由于公钥不一样了,所以无法登录,提示信息是 KEY 验证失败. 解决方法是: 在 /root/.ssh/known_host ...

  5. SSH登录失败:Host key verification failed

    转载自:https://help.aliyun.com/knowledge_detail/41471.html 注意:本文相关 Linux 配置及说明已在 CentOS 6.5 64 位操作系统中进行 ...

  6. SSH连接时出现Host key verification failed的原因及解决方法

    SSH连接的时候Host key verification failed. [root@cache001 swftools-0.9.0]# ssh 192.168.1.90@@@@@@@@@@@@@@ ...

  7. 登录ssh时Host key verification failed错误

    工作中总是测试不同的路由设备, 路由器的ip都是 192.168.111.1 ,ssh登录的时候总是出现这个错误. macos上,错误如下 spawn ssh -p 22 root@192.168.1 ...

  8. 大数据集群ssh登录其他机器失败 RSA host key for zb03 has changed and you have requested strict checking. Host key verification failed.

    [hadoop@zb02 .ssh]$ scp authorized_keys hadoop@zb03:/home/hadoop/.ssh @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...

  9. ssh 报错Host key verification failed 或Ubuntu connect to serve 失败

    ssh 报错Host key verification failed  或Ubuntu connect to serve 失败  通常是因为没有装ssh sudo apt-get install  o ...

  10. ssh远程登录出现Host key verification failed.解决办法

    今天通过ssh和域名连接主机: IcarusdeMacBook-Pro:~ icarus$ ssh root@icarusyu.me 出现了如下错误: @@@@@@@@@@@@@@@@@@@@@@@@ ...

随机推荐

  1. SoC scan implementation

    scan chain产生之前需要进行scan drc的过程,判断cell是不是能够串到scan chain上去 mux-d scan cell(是最常用的scan cell),还有其他的scan ce ...

  2. Pickle反序列化学习

    什么是Pickle? 很简单,就是一个python的序列化模块,方便对象的传输与存储.但是pickle的灵活度很高,可以通过对opcode的编写来实现代码执行的效果,由此引发一系列的安全问题 Pick ...

  3. [转帖]fullgc问题解决:Full GC (Metadata GC Threshold)

    #问题描述 在工作过程中,遇到一个问题:Tomcat在重启或者发布的时候,会有多次的full GC. 笔者使用的版本说明: Tomcat7.0.25 JDK8 首先排查JVM的问题,就要把GC日志打开 ...

  4. [转帖]Linux之bash反弹shell原理浅析

    环境 攻击机:kali            ip:192.168.25.144 靶    机:centos      ip:192.168.25.142 过程 kali 监听本地8888端口 靶机 ...

  5. Mysql8.0.32 union all创建视图无法使用中文模糊查询的坑

    Mysql8.0.32 union all创建视图无法使用中文模糊查询的坑 摘要 本周研发同事反馈现场有一个问题. 客户使用mysql的数据库(Windows平台) 然后在多表union all 创建 ...

  6. [转帖]Linux-文本处理三剑客grep详解

    https://developer.aliyun.com/article/885611?spm=a2c6h.24874632.expert-profile.311.7c46cfe9h5DxWK 简介: ...

  7. Oracle 修改参数

    alter system set sga_max_size=30720M scope=spfile; alter system set sga_target=30720M; alter system ...

  8. Map结构映射,避免每一个字段赋值

    var query1 = (from fore in forecastShippingDate join ship in shipOutOfStock on fore.Id equals ship.F ...

  9. 【SpringBoot】当AOP引发的异常与@RestControllerAdvice擦肩而过:异常处理的盲点揭秘

    各位上午/下午/晚上好呀! 今天在写bug的时候发现一个这样的问题: AOP抛出的异常竟然没有被@RestControllerAdvice注解修饰的异常统一处理类处理. 有一个需求,对某些加了自定义注 ...

  10. 【Mysql】复合主键和联合主键的区别

    复合主键: create table index_test ( a int not null, b int not null, c int not null, d int null, primary ...