Jenkins基础篇--linux安装Jenkins

2023-11-09

Jenkins简介

Jenkins是一个用Java编写的开源的持续集成工具,可用于自动化各种任务,如构建,测试和部署软件。

持续集成是强调开发人员提交了新代码之后,立刻进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。简单来讲持续集成就是频繁地将代码集成到主干。

Linux 无界面安装(命令行安装)

安装Jenkins之前,需要安装JDK(全称"Java Development Kit")。
JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库(即Java API 包括rt.jar)。
因为Jenkins是Java编写的开源的持续集成工具,依赖Java运行环境,所以需要安装JDK。

安装JDK

1、切换至root用户,打开终端terminal,输入su,然后输入root账户的密码

2、查看本地是否安装JDK,执行命令:java -version

下图表示本地未安装JDK

3、执行安装JDK命令,此处安装JDK 11:apt install openjdk-11-jdk

4、安装完成后再次查看JDK版本:java -version

下图表示已安装完成,可看到安装的JDK版本是11.0.19

安装jenkins

1、导入Jenkins的软件源,软件源提供了Jenkins相关软件包和组件的下载、安装和更新,执行命令:

 wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -

2、添加软件源到系统中,执行命令:

sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ >/etc/apt/sources.list.d/jenkins.list'

3、升级apt-get,执行命令:apt-get update

下图的失败 E: Package 'jenkins' has no installation candidate,就是因为apt-get没升级导致的

4、安装Jenkins,安装成功如下图,执行命令:apt-get install jenkins

5、检查Jenkins服务状态,可看到下图中绿色的文字active (running),表示Jenkins服务正在运行,执行命令:systemctl status jenkins

配置jenkins,服务器开放端口,打开浏览器访问:

1、安装防火墙,执行命令:apt-get install firewalld

2、开启防火墙,执行命令:systemctl start firewalld

3、开放指定端口,执行命令:firewall-cmd --zone=public --add-port=8080(端口号要记住)/tcp --permanent
命令含义:
–zone #作用域
–add-port=8080/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效

4、重启防火墙,执行命令:firewall-cmd --reload

5、查看端口号,查看当前所有tcp端口,执行命令:netstat -ntlp

6、使用其他电脑(有界面的)访问:http://服务器IP:端口号,如下图所示

7、如上图,打开突出显示的文件并复制文件中的内容,将内容粘贴到管理员密码字段中,然后单击Continue。 

8、安装推荐的插件,如果安装失败,可以再安装一次

9、创建第一个管理员用户,推荐点击“使用admin账户继续”

10、实例配置,可以不修改,这边修改主要为了安全性

11、成功登录到Jenkins使用界面,配置完成

二次访问时,由于之前设置中没有设置登录账号密码,所以需重新设置密码,或者如果之前设置了,但是忘记密码了,也可执行如下操作:

1、查看密码文件:cat /var/lib/jenkins/users/admin_838490948406025638(该文件每个人不一样)/config.xml

2、修改密码:vim /var/lib/jenkins/users/admin_838490948406025638(该文件每个人不一样)/config.xml,将passwordHash值修改成(111111)密钥如下:#jbcrypt:$2a$10$DdaWzN64JgUtLdvxWIflcuQu2fgrrMSAMabF5TSrGK5nXitqK9ZMS

3、重启Jenkins服务:systemctl restart jenkins

4、浏览器访问:http://服务器IP:端口号,输入账户admin,密码111111,进入到jenkins操作页面

5、如果想修改密码,可以打开系统设置--管理用户--点击设置,修改密码(此处密码很长是因为是密钥,设置时不用管,只管输入自己想要的密码,比如222222),点击保存,重新登录。

下面时操作步骤的截图演示。

打开系统设置

点击管理用户

点击设置

修改密码后,点击保存

 重新登录,修改完成。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jenkins基础篇--linux安装Jenkins 的相关文章

  • 如何随时暂停 pthread?

    最近我开始将 ucos ii 移植到 Ubuntu PC 上 我们知道 在pthread的回调函数中的 while 循环中简单地添加一个标志来执行暂停和恢复是不可能模拟ucos ii中的 进程 的 如下解决方案 因为ucos ii中的 进程
  • 如何修改s_client的代码?

    我正在玩apps s client c in the openssl源代码 我想进行一些更改并运行它 但是在保存文件并执行操作后 我的更改没有得到反映make all or a make 例如 我改变了sc usage函数为此 BIO pr
  • Linux shell 命令逐块读取/打印文件

    是否有一个标准的 Linux 命令可以用来逐块读取文件 例如 我有一个大小为 6kB 的文件 我想读取 打印第一个 1kB 然后是第二个 1kB 看来猫 头 尾在这种情况下不起作用 非常感谢 你可以这样做read n在循环中 while r
  • 在使用 Ant/Jenkins 时,如何查看同一 Java 项目的不同 Subversion 标签/分支?

    这是我的开发配置 颠覆之下 我有我的project X trunk 带有我最新的开发人员 我有我的project X tags 具有不同的版本 我正在考虑添加一个分支文件夹 我正在使用 Jenkins 使用 Ant 脚本构建我的projec
  • 如何从脚本向 sudo 提供密码?

    请注意 这是在我的本地计算机上运行的来宾虚拟机 VBox 我不担心安全性 我正在编写一个将在 Linux Ubuntu VM 上执行的脚本myuser用户 该脚本将在下面创建一个非常大的目录树 etc myapp 目前我必须手动完成所有这些
  • 如何使用sprof?

    请举例说明 从邮件中找到here http sources redhat com ml libc alpha 2003 07 msg00029 html and here http sourceware org ml binutils 20
  • 是否有我可以运行的操作系统命令来确定是否在基于 Xen 的虚拟机内运行

    我可以在基于 Xen 的虚拟机中运行一个操作系统命令来告诉我它是一个虚拟机而不是物理机 我听说内核对此有一些自我意识智能 例如就像 ps 输出中的额外列之类的 我知道 vmstat 提供了 st 列 但我在运行 Linux 内核 2 6 1
  • 如何使用 tmuxinator 在 tmux 中拆分水平窗格内的两个垂直窗格

    目前我的 tmuxinator yml 文件中有这个 windows editor layout main horizontal panes vim server rails s 这给了我两个窗口 一个用于编辑器 另一个用于服务器 在编辑器
  • 使用 jenkins.Creating .apk 文件生成 android 版本

    我正在使用 Jenkins 在 mac 上持续集成 android 应用程序 但是我无法使用 Jenkins 生成 apk 文件 就像我们在 iOS 应用程序中创建 ipa 一样 创建用于在 mac 上分发的 apk 文件的配置是什么 您可
  • 为什么使用Python的os模块方法而不是直接执行shell命令?

    我试图了解使用Python的库函数执行特定于操作系统的任务 例如创建文件 目录 更改文件属性等 背后的动机是什么 而不是仅仅通过执行这些命令os system or subprocess call 例如 我为什么要使用os chmod而不是
  • 使用 C++ 输出字符串覆盖 Linux 终端上的最后一个字符串

    假设我有一个命令行程序 有没有办法让我说的时候 std cout lt lt stuff 如果我不做std cout lt lt n 在另一个之间std cout lt lt stuff 东西的另一个输出将覆盖同一行上的最后一个东西 清理行
  • 如何删除 TFS 工作区映射?

    我在一个团队项目中的 tfs 中有一个项目 然后我们将该项目移动到另一个团队项目中的不同位置 我已将 Jenkins 配置为连接到团队项目并构建我的解决方案 但是当我更改设置以连接到新的 tfs 团队项目时 出现以下错误 workspace
  • 我在哪里可以学习如何使 C++ 程序与操作系统 (Linux) 交互

    我是一个 C 初学者 我想创建与操作系统交互的小程序 使用 Kubuntu Linux 到目前为止 我还没有找到任何教程或手册来让 C 与操作系统交互 在 PHP 中 我可以使用命令 exec 或反引号运算符来启动通常在控制台中执行的命令
  • 使用 MongoDB docker 镜像停止虚拟机而不丢失数据

    我已经在 AWS EC2 上的虚拟机中安装了官方的 MongoDB docker 映像 并且数据库上已经有数据 如果我停止虚拟机 以节省过夜费用 我会丢失数据库中包含的所有数据吗 在这些情况下我怎样才能让它持久 有多种选择可以实现此目的 但
  • 变量作为 bash 数组索引?

    bin bash set x array counter 0 array value 1 array 0 0 0 for number in array do array array counter array value array co
  • Linux TCP服务器:在接受连接之前读取客户端的IP地址

    Related C Winsock API如何在接受连接之前获取连接客户端IP https stackoverflow com questions 716209 c winsock api how to get connecting cli
  • /proc/PID 文件格式

    我想从中检索一些流程信息 proc目录 我的问题如下 中的文件是否有标准格式 proc PID 例如 有这个proc PID status文件与Name t ProcName在第一行 我可以在其他地方用空格代替这个文件吗 t或者类似的东西
  • 如何在 Linux 中使用单行命令获取 Java 版本

    我想通过单个命令获取 Linux 中的 Java 版本 我是 awk 的新手 所以我正在尝试类似的事情 java version awk print 3 但这不会返回版本 我将如何获取1 6 0 21从下面的Java版本输出 java ve
  • 使用脚本自动输入 SSH 密码

    我需要创建一个自动向 OpenSSH 输入密码的脚本ssh client 假设我需要通过 SSH 进入myname somehost用密码a1234b 我已经尝试过 bin myssh sh ssh myname somehost a123
  • 如何在 Linux x86_64 上模拟 iret

    我正在编写一个基于 Intel VT 的调试器 由于当 NMI Exiting 1 时 iret 指令在 vmx guest 中的性能发生了变化 所以我应该自己处理vmx主机中的NMI 否则 guest会出现nmi可重入错误 我查了英特尔手

随机推荐

  • Linux之RedHat 7 图形界面版安装(转载)

    linuxLinux之RedHat 7 图形界面版安装的详细教程 点击跳转 转载 https blog csdn net star in shy article details 82590241
  • 进程控制块和状态——随堂笔记

    1 PCB 描述进程的数据结构 当一个进程创建以后交给操作系统管理 管理的时候要对进程的属性进行描述 1 进程的描述信息 进程的基本信息pid给每个进程的编号 名字 2 处理器状态信息 在进程执行过程中使用的处理器的各种寄存器的信息 原因
  • Linux下的时间(ZZ)

    1 Linux下的时间 1 1 Linux下的时间系统 1 2 Linux下与时间有关的数据结构 2 获得当前时间 3 延时 4 定时器 4 1 alarm 4 2 setitimer 1 Linux下的时间1 1 Linux下的时间系统
  • Linux CentOS 巡检脚本

    系统巡检脚本 有常用的检查模块 如硬盘 内存 进程等 安全性检查等 1 巡查脚本 代码如下 示例 xunjian sh bin bash 系统状态 host while do clear echo e 当前在查看 e 1 31m 主机状态信
  • 永洪科技入选“2023大数据优秀服务商”

    8月23日 2023大数据优秀服务商 发布 永洪科技入选 此次评选由DBC CIS CIW eNet研究院牵头组织 旨在遴选大数据产业各细分赛道具有代表性与创新力的企业 组织 并展现其独特价值 重点考量技术实力 业内口碑 成长性 品牌力以及
  • LeetCode 5910. 检查两个字符串是否几乎相等

    如果两个字符串 word1 和 word2 中从 a 到 z 每一个字母出现频率之差都 不超过 3 那么我们称这两个字符串 word1 和 word2 几乎相等 给你两个长度都为 n 的字符串 word1 和 word2 如果 word1
  • Vue项目封装div拖动组件,实现div拖拽

    场景 在pc端项目中会碰到弹框后多个页面重叠的场景 类似于电脑打开多个文件夹 这时想要同时完整的展示两个页面的内容 就可以拖动页面 改变位置 很多教程都是使用自定义方法在单个组件中使用 本文带大家在Vue项目中封装一个拖拽div的方法 注册
  • JavaScript 弹窗

    JavaScript弹窗是Web开发中常见的交互方式之一 弹窗可以为用户提供提示 警告或者输入框等交互方式 让用户在使用网站或应用时更加便捷 在本文中 我们将讨论JavaScript弹窗的作用 类型和用途 JavaScript弹窗的作用 J
  • JVM的核心内容

    1 JVM对于java程序员的重要性可以用一下两句话来概述 1 1 关于任何java的技术问题都可以追溯到java虚拟机里面去 1 2 一个Java程序员水平的高低就看你对Java虚拟机这个东西有多了解 2 了解JVM需要先理解jdk与jr
  • 华为某高管工资曝光:每月高达27万,众网友表示长了见识

    如果说一个人工资每个月好几万 估计很多网友都会认为很高了 能拿到这么高薪资的人肯定是非常优秀和有能力的人 近日 一名在某企业从事招聘工作的网友在网上曝光了一条内容 其称在招聘简历中 无意发现了一份华为高管的简历 其级别是21级 月工资高达2
  • 利用Fiddler 解SSL加密 数据包

    在开发互联网应用的过程中 常常会设立或利用网络接口 为了调试对网络接口的使用 往往需要查看流入和流出网络接口的网络流量或数据包 抓包工具 就是一类用于记录通过网络接口的数据的工具 我们知道 网络协议是分层设计的 OSI模型将网络协议分为了7
  • 字符串之KMP详解

    昨晚梳理了一下KMP的过程 感觉印象深刻了不少 在此写下博客加深印象 同时也希望能和大家交流 KMP这个名字来源于其三个创始人名字首字母 主要用于解决字符串的匹配问题 字符串的匹配问题 假设有两个字符串S和T 问串T是否出现在串S中 串T在
  • Linux 链路聚合之bond和team

    交换机可以配置链路聚合 提供线路的冗余的同时提高带宽吞吐 服务器也可以通过bond team技术做网口硬件层面的冗余 防止单个网口应用的单点故障以及提高带吞吐量 bond模式最多可以添加两块网卡 team模式最多可以添加八块网卡 一 bon
  • vmware详细安装教程

    1 打开下载好的VMware安装文件 点击下一步 2 勾选 我接受许可协议中的条款 点击下一步 3 勾选 自动安装Windows Hypervisor Platform WHP 点击下一步 4 以下两个选项都勾选 5 选择安装路径 更改默认
  • TCP/IP协议三次握手与四次挥手

    一 标志位和序号 seq序号 发送方随机生成的 ack确认序号 ack seq 1 标志位ACK 1时确认序号有效 SYN标志位 发起一个新连接 ACK标志位 确认序号有效 FIN标志位 断开连接 二 三次握手 三次握手是客户端与服务端建立
  • 搭建 Github Pages 个人博客网站

    文章出自个人博客https knightyun github io 2018 04 01 github pages blog 1 1 转载请申明 目录 引言 关于博客 关于Github 创建Github账号 创建仓库 填充仓库 配置Gith
  • Linux sed 命令

    简介 sed Stream Editor文本流编辑 sed是一个 非交互式的 面向字符流的编辑器 能同时处理多个文件多行的内容 可以不对原文件改动 把整个文件输入到屏幕 可以把只匹配到模式的内容输入到屏幕上 还可以对原文件改动 但是不会再屏
  • 【WSL】[01] windows subsytem linux 安装、尤其(Ubuntu) 以及GUI的详细安装方法 - 升级APT到APT-FAST,加快8倍安装速度

    第 1 章前言 AI的训练和设计似乎ubuntu是必要的 而且 GPU的配置似乎也是要在Ubuntu下 某些模式版本才能兼容 单独搞一个编译服务器是个思路 但是 如果资金不够 也许要考虑在Windwos和Linux的系统共生下做点文章 Wi
  • liunux ubuntu 14.04/16 更换源为国内源--阿里云源/网易源/搜狐源

    转自 http www chenxm cc article 89 html 命令 sudo cp etc apt sources list etc apt sources list bak 备份 sudo vim etc apt sourc
  • Jenkins基础篇--linux安装Jenkins

    Jenkins简介 Jenkins是一个用Java编写的开源的持续集成工具 可用于自动化各种任务 如构建 测试和部署软件 持续集成是强调开发人员提交了新代码之后 立刻进行构建 单元 测试 根据测试结果 我们可以确定新代码和原有代码能否正确地