docker安装jenkins的过程并配置jdk、node和maven

 更新时间:2024年10月12日 10:52:30   作者:qq243920161  
本文介绍了如何从拉取Jenkins镜像开始,通过创建文件夹、准备JDK、Maven和Node环境,修改settings.xml支持http协议,到建立Dockerfile进行Jenkins镜像的二次打包,同时涉及容器的运行、Jenkins初始化设置、插件安装和环境变量配置等步骤,帮助用户成功部署并运行Jenkins服务

GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!
如果你想靠AI翻身,你先需要一个靠谱的工具!

拉取jenkins镜像

1
docker pull jenkins/jenkins:2.480-jdk21

创建一个文件夹,用于二次打包jenkins镜像

然后进入该文件夹,一会儿要有一些文件放在这里面

1
mkdir -p /data/jenkinscd /data/jenkins

提前准备好jdk、maven、node,并放到/data/jenkins下

由于3.8.x以上版本的maven只支持https协议,我们需要覆盖原有的settings.xml,让它支持http

准备settings.xml,文件内容如下

1
2
3
4
5
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">
</settings>

我们需要将镜像进行二次打包,把我们所需要的东西都加进去,新建Dockerfile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
FROM jenkins/jenkins:2.480-jdk21
EXPOSE 8080
# 将maven和jdk添加到容器中
# tar.gz添加进去后会自动解压,无需手动解压
ADD apache-maven-3.9.9-bin.tar.gz /usr/local
ADD jdk-8u421-linux-x64.tar.gz /usr/local
ADD node-v11.0.0-linux-x64.tar.gz /usr/local
# 覆盖容器里的settings.xml
ADD settings.xml /usr/local/apache-maven-3.9.9/conf/
# 配置环境变量
ENV TZ=Asia/Shanghai
ENV M2_HOME=/usr/local/apache-maven-3.9.9
ENV NODE_HOME=/usr/local/node-v11.0.0-linux-x64
# 配置maven、node的环境变量
# jdk环境变量不可在这里配,会影响jenkins的运行
ENV PATH=$M2_HOME/bin:$NODE_HOME/bin:$PATH

提前创建好jenkins_home,并授予最高权限

1
2
mkdir jenkins_home
chmod +777 jenkins_home

现在/data/jenkins下就会有这么几个文件

进行二次打包

1
docker build -t jenkins .

打包后,就能看到我们打包后的镜像

授予docker.sock权限,因为一会儿进入jenkins容器的时候要用docker命令

1
chmod +777 /var/run/docker.sock

然后我们把容器运行起来吧

1
2
3
4
5
6
7
docker run -d --name jenkins \
-p 0.0.0.0:8080:8080 \
-v /data/jenkins/jenkins_home:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
-v /run/docker.sock:/run/docker.sock \
-v /usr/bin/docker:/usr/bin/docker \
jenkins

等待一两分钟,访问访问你的ip地址:8080即可看到jenkins的首页

获取密码

1
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

看到这个页面后,安装推荐的插件即可

等待插件安装完成

安装完成后会弹出以下页面,使用admin账户登陆就可以了

进入Jenkins后要先修改密码,否则之后就进不去了

右上角,进入Security

修改成你想要的密码

改好后会自动跳到登录界面,用户名是admin,密码是你刚刚的密码

还记得刚刚Dockerfile,我们并没有配置jdk的环境变量,所以这边要手动配置一下

进入工具配置

配置jdk的安装目录

开始测试

新建一个项目

任务名称随便填,选择流水线

确定之后会进入项目的配置,我们找到流水线,输入测试脚本,保存

脚本如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
pipeline {
    agent any
    tools {
        // 刚刚配置jdk的名称
        jdk 'jdk8'
    }
    stages {
        stage('test') {
            steps {
                script {
                    sh """
                        docker -v
                        java -version
                        mvn -v
                        node -v
                        npm -v
                    """
                }
            }
        }
    }
}

点击立即构建

这里会显示构建状态

 我们点进去,然后点击Console Output,可以看到构建时,控制台的输出

在控制台中即可看到刚刚打印的版本号

本文只介绍怎么安装Jenkins,如果想要部署项目,请移步我的另一篇博客

Jenkins整合Docker实现CICD自动化部署(若依项目

到此这篇关于docker安装jenkins,并配置jdk、node和maven的文章就介绍到这了,更多相关docker安装jenkins内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

蓄力AI

微信公众号搜索 “ 脚本之家 ” ,选择关注

程序猿的那些事、送书等活动等着你

原文链接:https://blog.csdn.net/qq243920161/article/details/140600174

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 reterry123@163.com 进行投诉反馈,一经查实,立即处理!

相关文章

  • Ubuntu下安装Docker教程

    Ubuntu下安装Docker教程

    Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器。然而,Docker与虚拟机不同,它使用了沙箱机制,Docker容器不运行操作系统,它共享主机上的操作系统。下面我将在Ubuntu 15.10安装和使用Docker。
    2016-10-10
  • Docker镜像推送(push)到Docker Hub的实现

    Docker镜像推送(push)到Docker Hub的实现

    这篇文章主要介绍了Docker镜像推送(push)到Docker Hub的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 给debian的docker容器添加crontab定时任务

    给debian的docker容器添加crontab定时任务

    这篇文章主要介绍了给debian的docker容器添加crontab定时任务的相关知识,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • Docker Volume的用法看这一篇就够了

    Docker Volume的用法看这一篇就够了

    这篇文章主要介绍了Docker Volume的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • docker pull很慢如何解决

    docker pull很慢如何解决

    这篇文章主要介绍了docker pull很慢的解决方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • docker+jenkins+gitee配置持续集成部署方式

    docker+jenkins+gitee配置持续集成部署方式

    这篇文章主要介绍了docker+jenkins+gitee配置持续集成部署方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • OpenWRT如何解决Docker空间不足的问题

    OpenWRT如何解决Docker空间不足的问题

    由于OpenWRT成品机的磁盘未完全分配,导致Docker空间不足,通过OpenWRT系统的磁盘管理创建新的ext4分区,并将Docker运行路径修改至该分区,可以有效解决空间问题,具体步骤包括在OpenWRT创建分区,终端操作创建文件夹,修改Docker的daemon.json文件及Docker根目录配置
    2024-10-10
  • docker镜像完全卸载的操作步骤

    docker镜像完全卸载的操作步骤

    这篇文章主要介绍了docker镜像完全卸载的操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Docker Compose详细介绍

    Docker Compose详细介绍

    Docker Compose是一个用于定义和运行多个Docker容器的工具。它可以让用户轻松地定义和管理多个容器的配置,并且可以通过简单的命令来启动、停止和重启这些容器。在本文中,我们将详细介绍Docker Compose的使用和功能
    2023-04-04
  • 构建一个简单的CaaS系统

    构建一个简单的CaaS系统

    本文主要介绍如何从零开始构建一个简易的CaaS(Container as a Service)系统。简单易懂,希望有想学习的小伙伴可以关注下
    2016-10-10

最新评论