Linux下Docker方式Jenkins安装和配置

一、下载&安装

Jenkins官方Docker仓库地址:https://hub.docker.com/r/jenkins/jenkins
在这里插入图片描述

从官网上可以看到,当前最新的稳定版本是 jenkins/jenkins:lts-jdk17。建议下在新的,后面依赖下不来

所以,我们这里,执行docker pull命令,下载该版本的Jenkins的镜像安装包;

docker pull jenkins/jenkins:lts

之后,新增一个Jenkins的工作目录;

mkdir -p /var/jenkins_home

之后,设置Jenkins工作目录的文件权限,即设置文件的属主或者拥有者为Jenkins。(PS:因为"docker"用户在宿主机上的uid默认是"1000")

chown -R 1000 /var/jenkins_home

之后,执行docker run命令,开始安装Jenkins。

docker run -d \
-p 8888:8080  \
-p 50000:50000  \
-v /var/jenkins_home:/var/jenkins_home  \
-v /etc/localtime:/etc/localtime   \
-v $(which docker):/usr/bin/docker \
-v /var/run/docker.sock:/var/run/docker.sock \
--privileged=true  \
--restart=always \
--name=jenkins \
jenkins/jenkins:lts

命令参数详解如下:

-run -d :后台运行容器;
-p 8888:8080 将容器的 8080 端口映射到服务器的 8888端口上;
-p 50000:50000 将容器的 50000 端口映射到服务器的 50000 端口上;
-v /var/jenkins_home:/var/jenkins_home 将容器中 Jenkins 的工作目录挂载到宿主机上;
-v /etc/localtime:/etc/localtime 设置容器使用跟宿主机同样的时间设置;
-v $(which docker):/usr/bin/docker \ 将容器中 docker目录挂载到宿主机上
-v /var/run/docker.sock:/var/run/docker.sock 在容器中执行docker命令
–privileged=true 赋予容器root权限,便于进入容器;
-restart=always 设置容器自动重启;
-name=jenkins 给容器起的别名;
jenkins/jenkins:lts 镜像名称加版本号;

之后,安装完成,可以使用docker ps命令,查看Jenkins容器的运行状态;

docker ps

在这里插入图片描述
如果Jenkins容器状态显示为UP,表示Jenkins启动成功。

二、配置

安装完成后,下面开始配置。

在开始配置之前,首先,修改Jenkins插件下载源地址,设置为国内的镜像源地址,比如清华大学开源软件镜像站:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json (PS:这个很重要,否则会导致插件安装失败。)

Jenkins中修改下载源:
进入Jenkins安装目录修改hudson.model.UpdateCenter.xml文件,把url换成如下代码:1.进入docker的Jenkins容器中(我的Jenkins是安装在docker中的)docker exec -it JenkinsId bash
2.进入/var/jenkins_home 目录下cd /var/jenkins_home
3.修改 hudson.model.UpdateCenter.xml中的url3.1 vi hudson.model.UpdateCenter.xml3.2 http://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
4.退出容器 并重启Jenkinsexit docker restart JenkinsId

在这里插入图片描述

之后,登录阿里云控制台,设置ECS安全组规则,对外开放8888端口访问。(PS:因为我们在上面的安装过程中,把Jenkins的8080端口映射到宿主机服务器上的8888端口了。所以对外开放8888端口的访问,后续浏览器才能正常访问Jenkins页面。)
之后,打开浏览器访问Jenkins,进入Jenkins配置引导界面。(PS:地址,http://你的ECS服务器外网IP地址:8888。)

在这里插入图片描述
如上图所示,解锁Jenkins,需要管理员密码。

之后,使用docker ps命令,查看你的Jenkins容器ID。

docker ps

在这里插入图片描述
之后,使用docker logs命令,查看管理员密码。

docker logs 你的Jenkins容器ID

在这里插入图片描述
之后,在安装引导页面中,输入上图中管理员密码,点击继续,进入插件安装页面,点击安装推荐的插件;
在这里插入图片描述

之后,进入安装插件进度界面。
在这里插入图片描述之后,插件安装完成,开始创建管理员用户,输入用户的账号信息,点击保存并完成。
在这里插入图片描述
之后,进入实例配置界面,建议使用默认值,点击保存并完成。
在这里插入图片描述
至此,Jenkins安装配置完成了,系统自动登录并进入Jenkins控制台主页面。
在这里插入图片描述
至此,Jenkins安装配置完成了。

三、总结

在这里插入图片描述

失败的看报错信息,我的是之前下17 版本过低,更新为最新就行。也有可能是镜像问题,来不到。具体看报错信息。
后续补充:
在实际的项目中,如果对docker网络不是非常熟悉,还是建议使用普通方式安装Jenkins。

四、设置中文

  1. 选择Manage Jenkins
    在这里插入图片描述
  2. 选择Manage Plugins在这里插入图片描述
  3. 搜索插件并安装
    点击 Avaliable >> 输入 locale >> 勾选插件 >> 点击Install without retstart。
    在这里插入图片描述
  4. 安装成功
    4. 安装成功
  5. 重启Jenkins
    这里只提供两种方法:

方法1:可以将终端停止,再重新进入jenkins完成重启。 方法2:使用 restart 完成重启。

  1. 设置中文语言

1)重启完成后,登录jenkins,再次点击 Manage Jenkins

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/56049.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VS+QT 自定义插件变成动态库加载及使用

一、前言 有个界面需要重复使用某个自定义的控件,希望自定义控件能够像动态库文件那样,添加引用lib就能使用,经过多次太坑后,总结如下 二、实现方式 ① 新建项目,选择"Qt Designer Custom Widget" 创建自定…

python爬虫 - 进阶正则表达式

🌈个人主页:https://blog.csdn.net/2401_86688088?typeblog 🔥 系列专栏:https://blog.csdn.net/2401_86688088/category_12797772.html 目录 前言 一、匹配中文 (一)匹配单个中文字符 (二…

JavaEE-进程与线程

1.进程 1.1什么是进程 每个应⽤程序运⾏于现代操作系统之上时,操作系统会提供⼀种抽象,好像系统上只有这个程序在运 ⾏,所有的硬件资源都被这个程序在使⽤。这种假象是通过抽象了⼀个进程的概念来完成的,进程可 以说是计算机科学…

【动态规划】子数组系列(上)

1. 最大子数组和 53. 最大子数组和 状态表示:以 i 位置为结尾时的所有子数组中的最大和 状态转移方程: i 位置为结尾的子数组又可以分为长度为 1 的和大于 1 的,长度为 1 就是 nums[i] ,长度不为 1 就是 dp[i - 1] nums[i]&…

Prometheus + Grafana 监控 MySQL 数据库

文章目录 1、前置介绍2、搭建流程2.1、安装 Docker2.2、安装 MySQL2.3、安装 MySQL Exporter2.4、安装 Prometheus2.5、安装 Grafana 1、前置介绍 本次监控平台搭建,我使用2台阿里云服务器来完成本次的搭建部署操作,配置如下: 阿里云ECS1&am…

【宝可梦】游戏

pokemmo https://pokemmo.com/zh/ 写在最后:若本文章对您有帮助,请点个赞啦 ٩(๑•̀ω•́๑)۶

AI金融攻防赛:金融场景凭证篡改检测(DataWhale组队学习)

引言 大家好,我是GISer Liu😁,一名热爱AI技术的GIS开发者。本系列文章是我跟随DataWhale 2024年10月学习赛的AI金融攻防赛学习总结文档。本文主要讲解如何解决 金融场景凭证篡改检测的核心问题,以及解决思路和代码实现过程。希望…

48 Redis

48 Redis 前言 Redis(Remote Dictionary Server ),即远程字典服务。是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 redis会周期性的把更新的数据写入磁盘或者把修改操…

网络受限情况下安装openpyxl模块提示缺少Jdcal,et_xmlfile

1.工作需要处理关于Excel文件内容的东西 2.用公司提供的openpyxl模块总是提示缺少jdcal文件,因为网络管控,又没办法直接使用命令下载,所以网上找了资源,下载好后上传到个人资源里了 资源路径 openpyxl jdcal et_xmlfile 以上模块来源于:Py…

微信小程序后台搭建—node+mysql

想必大家都有一个困扰,想要用微信小程序作为前端,但是后端不知道如何用node连接微信小程序,我最近也一直困扰许久,所以我就想用node写后端接口在连接微信小程序,记录一下学习笔记 前言 前端:微信小程序 后端:nodeexpr…

VirtualBOX虚拟机提高速度,鼠标卡顿解决——未来之窗数据恢复

一、刚安装完操作系统,鼠标操作不灵敏 需要安装系统增强 二、系统增强作用 1.鼠标丝滑 2.文件共享 3.可以共享剪贴板 三、安装步骤-设备-安装增强 四、安装步骤-设备-选择光驱 五、安装增强软件然后重启 六、阿雪技术观 拥抱开源与共享,见证科技进…

NVM 切换Node.js版本工具

大家好我是苏麟,今天聊聊NVM切换版本工具。 切换 node 版本工具 : GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions 查看node版本 node -v 查看 nvm 版本 nvm -v 查看可安装的Nod…

动态规划lc

先找到规律,然后找边界情况;部分特殊情况分类讨论 *递归 70.爬楼梯 简单 提示 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入&#xff1a…

手撕数据结构 —— 栈(C语言讲解)

目录 1.认识栈 什么是栈 栈的示意图 2.如何实现栈 3.栈的实现 Stack.h中接口总览 具体实现 结构的定义 初始化栈 销毁栈 入栈 出栈 取栈顶元素 获取有效元素的个数 判断栈是否为空 4.完整代码附录 Stack.h Stack.c 1.认识栈 什么是栈 栈是一种特殊的线性表…

创建XGBoost模型(回归任务)MATLAB

代码如下: % 导入数据 data readtable(data.xlsx);% 假设最后一列是目标值,前面列为特征 X data{:, 1:end-1}; % 特征 y data{:, end}; % 目标值% 划分训练集和测试集 cv cvpartition(height(data), HoldOut, 0.2); XTrain X(training(cv)…

最懂生活的年轻人,都在喝十元奶茶

文 | 螳螂观察 作者 | 如意 以前的打工人,总把二三十的高价奶茶当成身份的象征,喝上了高价奶茶才能叫做在生活中富养自己。 只是,到盘开支的时候,打工人才猛然发觉,动辄二三十一杯的奶茶,不知不觉刮走了…

美团测试面试真题学习

美团真题1–测试基础-业务场景说下你的测试用例设计 功能角度 方法论 边界值、等价类划分、错误推测法示例 输入已注册的用户名和正确的密码,验证是否登录成功;输入已注册的用户名和不正确的密码,验证是否登录失败输入未注册的用户名和任意密码&#xff…

RabbitMQ事务模块

目录 消息分发​​​​​​​ 负载均衡 幂等性保障 顺序性保障 顺序性保障方案 二号策略:分区消费 三号策略:消息确认机制 四号策略: 消息积压 RabbitMQ集群 选举过程 RabbitMQ是基于AMQP协议实现的,该协议实现了事务机制,要么全部成功,要么全…

网站在对抗机器人攻击的斗争中失败了

95% 的高级机器人攻击都未被发现,这一发现表明当前的检测和缓解策略存在缺陷。 这表明,虽然一些组织可能拥有基本的防御能力,但他们没有足够的能力应对更复杂的攻击。 例如利用人工智能和机器学习来模仿人类行为的攻击。 这些统计数据强调…

反转链表解题思路

题目描述 给定一个单链表的头结点pHead,长度为n,反转该链表后,返回新链表的表头。 示例:当输入链表{1,2,3}时,经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。 解题思路:迭…