Jenkins入门——安装docker版的Jenkins & 配置mvn,jdk等 & 使用案例初步 & 遇到的问题及解决

前言

Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。

官网:https://www.jenkins.io/zh/

本篇博客介绍docker版的jenkins的安装和使用,maven、jdk,汉语的配置,期间遇到的各种问题及其解决方案,并给出一个简单的使用案例。

目录

  • 前言
  • 引出
  • 一、安装jenkins
    • 1、拉取镜像及问题
    • 2、创建运行容器
    • 3、首次访问配置
  • 二、配置jenkins
    • 1、汉化
    • 2、mvn的配置
    • 3、配置jdk
  • 三、使用案例
    • 1、设置源码位置
    • 2、构建的步骤
    • 3、构建过程查看
  • 四、遇到的问题集锦
    • 1、打包失败
  • 总结

引出


1.安装docker版本的jenkins;

2.配置jenkins,汉化,配置mvn,配置jdk;

3.拉取开源代码,进行maven的打包案例;

4.遇到的问题及其解决方案;

一、安装jenkins

安装指引: https://www.jenkins.io/zh/doc/book/using/

1、拉取镜像及问题

shell 复制代码
vi  /etc/docker/daemon.json
java 复制代码
{
    "registry-mirrors":
        [
        "https://docker.mirrors.ustc.edu.cn/",
        "https://hub-mirror.c.163.com",
        "https://ung2thfc.mirror.aliyuncs.com",
        "https://registry.docker-cn.com"],

    "live-restore": true,
    "insecure-registries":["10.0.0.12:5000"]

}
java 复制代码
systemctl restart docker

拉取成功

2、创建运行容器

java 复制代码
docker run \
  -u root \
  --name jenkins-blueocean \
  -d \
  -p 8080:8080 \
  -p 50000:50000 \
  -v /usr/local/software/jenkins:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  docker.io/jenkinsci/blueocean

3、首次访问配置

查看日志,找到密码

自动安装一些插件

创建一个用户,后续登录用这个用户名和密码

二、配置jenkins

1、汉化

选择插件进行安装

进行语言的设置

2、mvn的配置

采用的是复制压缩包到镜像中,然后解压的方式,可以参考下面博客

Linux安装git和maven------拉取代码 --> mvn打包成jar包 --->运行jar包

配置一下xml设置文件

设置maven的安装路径

3、配置jdk

输入以下命令进行docker自带的jdk的查找

shell 复制代码
 which java

三、使用案例

1、设置源码位置

2、构建的步骤

shell 复制代码
clean package -Dmaven.test.skip=true -U
powershell 复制代码
docker -v

echo "---------构建成功---------"

3、构建过程查看

四、遇到的问题集锦

1、打包失败

java 复制代码
[ERROR] Failed to execute goal on project spring-gc-demo: Could not resolve dependencies for project com.tianju:spring-gc-demo:jar:1.0-SNAPSHOT: The following artifacts could not be resolved: org.springframework.boot:spring-boot-starter:jar:2.3.8.RELEASE, org.springframework.boot:spring-boot-autoconfigure:jar:2.3.8.RELEASE, com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.11.4, org.springframework.boot:spring-boot-starter-tomcat:jar:2.3.8.RELEASE, org.springframework:spring-context:jar:5.2.12.RELEASE: Could not transfer artifact org.springframework.boot:spring-boot-starter:jar:2.3.8.RELEASE from/to central (https://repo.maven.apache.org/maven2): transfer failed for https://repo.maven.apache.org/maven2/org/springframework/boot/spring-boot-starter/2.3.8.RELEASE/spring-boot-starter-2.3.8.RELEASE.jar: Connect to repo.maven.apache.org:443 [repo.maven.apache.org/151.101.108.215, repo.maven.apache.org/2a04:4e42:8c:0:0:0:0:215] failed: Network unreachable (connect failed) -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
Build step 'Invoke top-level Maven targets' marked build as failure

解决方法:

配置一下阿里云的地址

xml 复制代码
    <mirror>
        <id>aliyunmaven</id>
        <mirrorOf>central</mirrorOf>
        <name>阿里云公共仓库</name>
        <url>https://maven.aliyun.com/repository/public</url>
    </mirror>

总结

1.安装docker版本的jenkins;

2.配置jenkins,汉化,配置mvn,配置jdk;

3.拉取开源代码,进行maven的打包案例;

4.遇到的问题及其解决方案;

相关推荐
头发还在的女程序员14 小时前
医院陪诊管理系统怎么选择?——2026 年选型避坑与架构参考
java·开发语言·陪诊系统·陪诊app·医院陪诊陪护
CodeStats14 小时前
【Spring事务】Spring事务注解 @Transactional 完整体系:从 MySQL 隔离级别到 MyBatis 原理详解
java·spring·mybatis·事务·transactional
我命由我1234515 小时前
Android 开发问题:为 PDFView 设置一个带有黑色边框的背景 drawable,但边框没有生效
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
暖和_白开水17 小时前
数据分析agent(十三_3):docker mysql容器镜像服务的异常错误
mysql·docker·容器
都叫我大帅哥17 小时前
从Python到Java:为什么企业级Agent最终会选择Java?
java·ai编程
wanderist.17 小时前
Lambda表达式在算法竞赛中的应用
java·开发语言·算法
爱小黄18 小时前
使用docker搭建集群-使用 Docker 搭建 KingbaseES 集群
运维·docker·容器
腻害兔19 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:IM 即时通讯模块,一个被低估的「全功能聊天系统」
java·前端·vue.js·产品经理·ai编程
心念枕惊19 小时前
.NET CORE 授权进阶-角色、策略与动态权限实现
java·前端·.netcore
余—笙20 小时前
Docker安装rabbitmq并安装延迟队列插件
docker·容器·rabbitmq