Jenkins的安装与启动

文章目录

一、安装JDK和Maven

  • linux安装Java(JDK)和Maven
  • 截止2024年,至少使用Java11才能运行最新的Jenkins。不建议用旧版本的Jenkins,插件问题不好解决。

二、提前开启防火墙

  • 开启端口8080,同时刷新防火墙配置
shell 复制代码
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

二、通过yum安装Jenkins

  • 默认安装(可执行文件):/usr/bin/
  • 所有数据:/var/lib/jenkins/
  • 项目数据的路径:/var/lib/jenkins/jobs/

1、添加 Jenkins YUM 源和公钥

shell 复制代码
#配置Jenkins yum源
wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo;
#添加公钥
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key;

2、安装 Jenkins

shell 复制代码
sudo yum install jenkins

3、启动 Jenkins

shell 复制代码
#刷新服务
sudo systemctl daemon-reload
#设置开机自启动
sudo systemctl enable jenkins
#启动Jenkins
sudo systemctl start jenkins

4、检查 Jenkins 状态

shell 复制代码
sudo systemctl status jenkins

5、访问 Jenkins Web UI

shell 复制代码
http://ip:8080

可能遇到的问题

三、通过导入war包启动Jenkins

  • 把 jenkins.war 包放在当前目录下,直接运行下面的命令即可启动

    shell 复制代码
    java -jar jenkins.war
  • Jenkins的所有数据存储路径为:/root/.jenkins/

  • Jenkins的项目路径为:/root/.jenkins/workspace/

四、docker启动Jenkins详细教程

1、配置的整体过程

  • 2022/7/2 Jenkins详细教程

  • 测试是否成功,能访问会出来html

    shell 复制代码
    curl 192.168.220.130:9001
  • 查找jenkins安装路径

    shell 复制代码
    rpm -ql jenkins

2、可能遇到的问题

runc did not terminate successfully

  • 报错原文
txt 复制代码
Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: unable to retrieve OCI runtime error (open /run/containerd/io.containerd.runtime.v2.task/moby/49a548850cf476caf1bdfe26b0925d59511de8723fb339971764bf9ebfd62ff4/log.json: no such file or directory): runc did not terminate successfully: exit status 127: unknown
Error: failed to start containers: 49a548850cf4

driver failed programming external connectivity on endpoint xxx

  • 报错原文
txt 复制代码
Error response from daemon: driver failed programming external connectivity on endpoint jenkins (7b8b8bb2f859de1a256527357b4c7e7327edf63ddcc18abfaea2a0aa9d04b282):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8080 -j DNAT --to-destination 172.17.0.2:8080 ! -i docker0: iptables: No chain/target/match by that name.

logs日志中存在permission denied问题

  • 报错原文

    txt 复制代码
    touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied
    Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?
  • 把启动命令改成

    shell 复制代码
    docker run -di -u root  --privileged=true --name=jenkins -p 9001:8080 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:lts
  • docker 容器运行出现permission denied

启动成功,日志也没问题,但是就是无法访问

  • 看看docker的端口是不是8080,不懂为什么,不是8080就一定无法访问

其他

linux 清除卸载jenkins

代码托管平台gitlab

相关推荐
IpdataCloud4 分钟前
效果广告中点击IP与转化IP不一致?用IP查询怎么做归因分析?
运维·服务器·网络
SPC的存折34 分钟前
2、Docker命令与镜像、容器管理
linux·运维·服务器·docker·容器·eureka
D4c-lovetrain38 分钟前
Linux个人心得26 (redis主从复制全流程,详细版)
linux·运维·服务器
Bert.Cai1 小时前
Linux whoami命令详解
linux·运维
x***r1511 小时前
驱动精灵离线版使用指南:免联网快速安装驱动(万能网卡版)
linux·运维·服务器
嵌入式×边缘AI:打怪升级日志1 小时前
Linux GPIO子系统与中断驱动开发:从入门到实战(完整版)
linux·运维·驱动开发
kyle~1 小时前
SPOOLing 技术(假脱机技术)独占设备 → 虚拟共享设备
运维·服务器·网络
卡比巴拉—林2 小时前
Linux SSH免密登录配置(双向免密)
linux·运维·ssh
NineData2 小时前
NineData 5.0 产品发布和生态伙伴大会,圆满举办!
运维·数据库·人工智能
薛定猫AI2 小时前
【技术干货】AI Agent 自动化业务流程实战:从零构建智能营销系统
运维·人工智能·自动化