目录

前言

准备工作

系统要求

检查系统信息

更新系统

安装Docker

第一步:卸载旧版本Docker(如果存在)

第二步:安装必要的软件包

第三步:添加Docker官方仓库

第四步:安装Docker CE

第五步:启动Docker服务

第六步:验证Docker安装

第七步:配置Docker用户权限(可选但推荐)

拉取Jenkins镜像

选择Jenkins镜像版本

查看下载的镜像

创建Jenkins容器

第一步:创建数据目录

第二步:运行Jenkins容器

第三步:验证容器运行状态

初始化Jenkins

第一步:获取初始管理员密码

第二步:访问Jenkins Web界面

第三步:解锁Jenkins

第四步:安装插件

第五步:创建管理员用户

第六步:实例配置

第七步:开始使用Jenkins

基础配置

配置系统设置

Jenkins URL配置

邮件通知配置

全局工具配置

安全配置

插件管理

常见问题及解决方案

问题1:无法访问Jenkins Web界面

问题2:Jenkins容器启动失败

问题3:Jenkins运行缓慢

问题4:忘记管理员密码

问题5:插件安装失败

总结

下一步建议

有用的命令速查

相关资源


前言

Jenkins是一个开源的持续集成和持续部署(CI/CD)工具,广泛用于自动化构建、测试和部署应用程序。使用Docker安装Jenkins具有以下优势:

  • 环境隔离:Jenkins运行在独立的容器中,不会影响主机系统
  • 快速部署:几分钟内就能完成安装
  • 易于管理:可以轻松备份、迁移和升级
  • 版本控制:可以使用不同版本的Jenkins镜像

准备工作

系统要求

  • 操作系统:CentOS 7.x
  • 内存:至少2GB RAM(推荐4GB以上)
  • 磁盘空间:至少10GB可用空间
  • 网络:能够访问互联网下载镜像

检查系统信息

# 查看系统版本
cat /etc/redhat-release# 查看内存使用情况
free -h# 查看磁盘空间
df -h

更新系统

# 更新系统软件包
sudo yum update -y

安装Docker

第一步:卸载旧版本Docker(如果存在)

# 卸载可能存在的旧版本Docker
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

第二步:安装必要的软件包

# 安装yum工具包
sudo yum install -y yum-utils \device-mapper-persistent-data \lvm2

解释

  • yum-utils:提供yum-config-manager实用程序
  • device-mapper-persistent-datalvm2:Docker的devicemapper存储驱动程序需要

第三步:添加Docker官方仓库

# 添加Docker CE稳定版仓库
sudo yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo

第四步:安装Docker CE

# 安装Docker CE
sudo yum install -y docker-ce docker-ce-cli containerd.io

第五步:启动Docker服务

# 启动Docker服务
sudo systemctl start docker# 设置Docker开机自启
sudo systemctl enable docker# 查看Docker状态
sudo systemctl status docker

第六步:验证Docker安装

# 查看Docker版本
sudo docker --version# 运行hello-world测试容器
sudo docker run hello-world

如果看到"Hello from Docker!"的消息,说明Docker安装成功!

第七步:配置Docker用户权限(可选但推荐)

# 将当前用户添加到docker组
sudo usermod -aG docker $USER# 重新登录或执行以下命令使权限生效
newgrp docker# 测试是否可以不使用sudo运行docker命令
docker --version

拉取Jenkins镜像

选择Jenkins镜像版本

Jenkins有两个主要版本:

  • LTS版本:长期支持版本,更稳定(推荐)
  • 最新版本:包含最新功能,但可能不够稳定
# 拉取Jenkins LTS版本(推荐)
docker pull jenkins/jenkins:lts# 或者拉取最新版本
# docker pull jenkins/jenkins:latest

查看下载的镜像

# 查看本地Docker镜像
docker images

你应该能看到类似这样的输出:

REPOSITORY          TAG       IMAGE ID       CREATED        SIZE
jenkins/jenkins     lts       xxxxxxxxxxxx   2 weeks ago    441MB

创建Jenkins容器

第一步:创建数据目录

为了确保Jenkins数据持久化,我们需要在主机上创建一个目录来存储Jenkins数据:

# 创建Jenkins数据目录
sudo mkdir -p /var/jenkins_home# 设置目录权限(Jenkins容器内的用户ID是1000)
sudo chown -R 1000:1000 /var/jenkins_h

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

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

相关文章

30.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--单体转微服务--公共代码--用户上下文会话

在前面的文章中,我们会看到使用ContextSession来获取当前用户的UserId和UserName。这篇文章我们就一起来看看如何实现ContextSession。 一、ContextSession的实现 我们在公共类库SP.Common中创建一个名为ContextSession的类,用于获取当前请求的用户信息。…

BaseDao

#### 10.1 DAO概念> DAO:Data Access Object,数据访问对象。 > > Java是面向对象语言,数据在Java中通常以对象的形式存在。一张表对应一个实体类,一张表的操作对应一个DAO对象!>> 在Java操作数据库时&a…

USRP捕获手机/路由器数据传输信号波形(中)

目录: USRP捕获手机/路由器数据传输信号波形(上) USRP捕获手机/路由器数据传输信号波形(中) USRP捕获手机/路由器数据传输信号波形(下) 三、双工通信信号捕获 3.1 信号接收系统 5805e6Hz&a…

使用 Kiro AI IDE 3小时实现全栈应用Admin系统

Hello, 大家好,我是程序员海军, 全栈开发 |AI爱好者 | 独立开发。 之前我是采用Node生态开发的大模型以及MCP Server,大模型开发的生态主要是Python语言,为了更好的学习大模型开发,于是开了新坑。开始学习Python, 以及…

浏览器pdf、image显示

浏览器地址栏 pdf data:application/pdf;base64, data:application/pdf;base64,JVBERi0xLjcKJeLjz9MKMjMgMCBvYmoKPDwv image data:image/jpeg;base64, data:image/jpeg;base64,/9j/4Q3fRXhpZgAATU0AKgAAAAgABwE

《Linux运维总结:银河麒麟V10 SP3启动docker容器报错permission denied》

总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:Linux运维实战总结 一、环境信息 二、背景 1、使用docker启动一个nginx容器,报错信息如下: docker: Error response from…

PDF源码解析

PDF源码解析打开PDF解析PDF​0. 文件头关键信息解析技术原理图解文件头的重要性实际文件结构示例开发者注意事项历史背景1. 根目录整体结构关键字段解析核心概念解释实际应用场景完整对象关系图技术总结2. 页面树对象结构关键字段解析页面树工作原理技术要点总结实际应用3. 图像…

java开闭原则 open-closed principle

基本知识 1.核心思想:面向抽象编程 2.基本内涵:对修改关闭,对扩展开放 3.要求:尽可能不修改源码而是增加新功能 例子 以spring5核心原理与30个类手写实战中的为例 package com.gupaoedu.vip.design.principle.openclose;/*** Crea…

拥抱智慧物流时代:数字孪生技术的应用与前景

概述 在数字经济全面推进的当下,物流行业正经历着前所未有的智能化升级。作为新一代信息技术的重要代表,数字孪生技术正悄然改变着物流的运作方式和决策模式。所谓数字孪生,是指在虚拟空间中创建与现实物流系统高度一致的数字模型&#xff0…

libnest2d-头文件分析-libnest2d.hpp-几何类型-策略类型-参数配置

libnest2d 库的主头文件,定义了一个用于 二维不规则形状自动排样(Nesting) 的C接口。以下是详细解析:1. 头文件结构 (1) 防止重复包含 #ifndef LIBNEST2D_HPP #define LIBNEST2D_HPP // ... #endif // LIBNEST2D_HPP确保头文件只被…

【Docker】部署Docker可视化管理面板Dpanel

一、DPanel 介绍 1.1 DPanel 简介 DPanel 是一款专为 Docker 设计的可视化管理面板,旨在降低容器、镜像及相关资源的管理门槛。通过简洁直观的图形化界面,即使是对 Docker 不熟悉的用户,也能轻松上手,实现容器化应用的高效部署与管…

GCC/G++ + Makefile/make 使用

一、gcc\g编译器 什么是gcc和g,它们的区别又是什么? gcc编译器是专门用来编译C语言的,而g编译器既可以编译C语言又可以用来编译C,但是主要还是用来编译C。 我们都知道代码形成可执行程序都是需要经过预处理、编译、汇编和链接这四…

重复文件查找工具:DataSecurity Plus 全面提升企业文件管理效率

企业日常运营经常会出现这样的场景:员工在文件传输、共享与备份过程中,因操作不当或系统设置问题,出现文件重复存储;跨部门协作时,相同的项目资料可能被多次保存;随着数据迁移与系统升级,重复文…

【软件架构】资源池架构设计中的三种主流模式

在资源池架构设计中,三种主流模式——集中式、分布式和混合式资源池——各有其独特的优势、劣势和适用场景。理解它们的区别对于设计高效、可靠和可扩展的系统至关重要。 下面是对这三种模式的详细分析和比较:集中式资源池 核心概念: 将所有计…

Java 类加载冲突

在某次线上部署过程中,我们遇到了一个十分诡异的问题:同样的应用,在 ext3 文件系统下运行正常,但部署到 ext4 文件系统下却出现了如下异常:The methods class, com.ctc.wstx.io.StreamBootstrapper, is available from…

VMware安装 统信UOS桌面专业版

前言 近年来,随着Linux发行版在开发者、企业环境中的应用逐渐增多,国产操作系统统信UOS(基于Debian)因其良好的图形化界面和本地化支持,成为不少用户体验Linux生态的选择之一。本文将以VMware Workstation Pro 17为例…

SAP Datasphere 02 - 建模

创建连接创建到 HANA Cloud 实例的连接查看 HANA Cloud实例连接 Endpoint创建连接选择连接类型配置连接信息,授权方式,用户名密码等配置连接名称验证连接导入数据源表创建目录 Hotel ,放置建模对象点击新建目录,导入远程表选择数据…

isasssim robotiq夹爪踩坑

1. usd导出urdf失败在isasssim的仿真中的 robotiq 2f夹爪,首先目前4.5asset里面的usd不能直接转urdf,因为模型中存在 “闭环连接”,即某个部件(或关节)同时与两个及以上的父部件相连,形成类似 “三角形” 的…

50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | Pokedex(宝可梦图鉴)

📅 我们继续 50 个小项目挑战!—— Pokedex组件 仓库地址:https://github.com/SunACong/50-vue-projects 项目预览地址:https://50-vue-projects.vercel.app/ 使用 Vue 3 结合 PokeAPI 来创建一个炫酷的宝可梦图鉴应用。通过这个…

【Practical Business English Oral Scene Interpretation】在职主持会议-安排任务+结束会议

文章目录Introduction1. 讨论代办事项2. 分配工作任务3. 说明截止日期4. 说明截止日期5. 感谢参会者Introduction Note that each row of the table represents the content of the conversation in order. 1. 讨论代办事项 AlexBarryNoteLet’s review the to-dos from the…