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

相关推荐
乘云数字DATABUFF4 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--6 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森6 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜6 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB7 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
XIAOHEZIcode9 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220709 天前
如何搭建本地yum源(上)
运维
大树8812 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠12 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质12 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务