Docker + jenkins项目打包镜像部署详细步骤(亲测有效)

 更新时间:2025年04月23日 11:20:15   作者:EdwardYange  
这篇文章主要介绍了Docker + jenkins项目打包镜像部署的相关资料,包括Jenkins的安装、项目搭建、Dockerfile的设置以及遇到的一些问题和解决方法,文中通过代码介绍的非常详细,需要的朋友可以参考下

这一期目前是基于已经搭建好Docker + jenkins 的基础上进行的,当然,后面会将Docker和Jenkins的部署也会写,好了,废话不多说,接下来我们就已经搭建好的环境进行项目的部署:

1.jenkins 安装:

前期的JDK安装:以下的安装都是基于jenkins 就可以,当然自己在外部的JDK在启动Jenkins时候就需要将其挂载在Jenkins上,不然在Jenkins中会找不到执行环境,比如:

后续会将这个的启动和部署出一个文章的,现在很多文章不够具体和细节

docker run -d \
-p 8888:8080 \
-p 50000:50000 \
--privileged=true \
-v /var/jenkins_home:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
-e JAVA_OPTS=-Duser.timezone=Asia/Shanghai \
--restart=always \
--name=jenkins \
-u root \
-v /data/maven/maven3.9:/data/maven \   这里就是挂载的maven
-v /usr/local/tools/jdk11:/data/jdk11 \  这里是挂在的jdk
-v /var/run/docker.sock:/var/run/docker.sock \  **这里非常重要,必须加**,不然进去执行shell会找不到Docker命令
-v $(which docker):/usr/bin/docker \ **这里非常重要,必须加**,不然进去执行shell会找不到Docker命令
jenkins/jenkins

maven安装:

全局环境变量设置:

上面的前期设置:

2.项目搭建

2.1.接下来就是新建任务

项目具体设置

2.2 git 仓库地址配置

在这里插入图片描述

2.3 maven配置

2.4 shell 脚本设置

2.5 项目中Dockerfile 设置

Jenkins shell:

#!/bin/bash
cd /var/jenkins_home/workspace/springboot-jenkins-test
docker stop springboottest || true
docker rm springboottest || true
docker rmi springboottest || true
docker build -t springboottest .
docker run -d -p 8092:8092 --name springboottest springboottest:latest

项目中的Dockerfile:

# 指定是基于哪个基础镜像
FROM java:8

# 作者信息
MAINTAINER Edward_zhang

# 挂载点声明
VOLUME /tmp1

# 将本地的一个文件或目录,拷贝到容器的文件或目录里
ADD /target/springboot-jenkins-test-1.0.0.jar springboot.jar

#shell脚本
RUN bash -c 'touch /springboot.jar'

# 将容器的8081端口暴露,给外部访问。
EXPOSE 8092

# 当容器运行起来时执行使用运行jar的指令
#ENTRYPOINT ["java", "-jar", "springboot.jar"]

ENTRYPOINT ["java", "-jar", "/springboot.jar"]

最终要的来了:点击保存 😂

构建:

2.6 结果展示

看到上图中的日志显示,就可以知道是我们在Dockerfile 中设置的相关

当然在其中也遇到过很多坑:

3. 遇到的坑总结

3.1 jdk 找不到

这就是上面所说的Jenkins部署的时候没有将jdk挂载,

3.2 docker command not found

这里出现的问题就很重要了,问题是你在部署启动Jenkins的时候,没有将docker 容器挂载,后面运行上面的shell脚本的时候就会出现找不到的问题

3.3 打包失败 Build failed

这里的问题就是maven出现问题,会出现

3.4 jdk 设置问题

总结 

到此这篇关于Docker + jenkins项目打包镜像部署的文章就介绍到这了,更多相关Docker+jenkins打包镜像部署内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 通过UI管理docker的方法

    通过UI管理docker的方法

    这篇文章主要介绍了通过UI管理docker的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Docker安装常用组件(mysql,redis)的方法

    Docker安装常用组件(mysql,redis)的方法

    今天小编就为大家分享一篇关于Docker安装常用组件(mysql,redis)的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • Docker部署MinIO镜像的方法(保姆级教程)

    Docker部署MinIO镜像的方法(保姆级教程)

    本文主要介绍了使用Docker部署MinIO镜像,包括创建挂载目录、运行MinIO容器的参数解析、使用Compose运行MinIO容器等,具有一定的参考价值,感兴趣的可以了解一下
    2024-12-12
  • Docker安装运行SRS的过程记录

    Docker安装运行SRS的过程记录

    SRS定位是运营级的互联网直播服务器集群,追求更好的概念完整性和最简单实现的代码,本文给大家介绍下Docker安装运行SRS的过程,感兴趣的朋友跟随小编一起看看吧
    2022-04-04
  • docker build -t 和 docker build -f 区别解析

    docker build -t 和 docker build -f 区别解析

    docker build 是用于构建Docker镜像的命令,它允许你基于一个Dockerfile来创建一个镜像,在 docker build 命令中,有两个常用的选项 -t 和 -f,它们有不同的作用,这篇文章主要介绍了docker build -t 和 docker build -f 区别,需要的朋友可以参考下
    2023-08-08
  • docker镜像无法上传的解决方法

    docker镜像无法上传的解决方法

    大家都知道创建镜像有很多方法,用户可以从 Docker Hub 获取已有镜像并更新,也可以利用本地文件系统创建一个。但是工作中却发现docker镜像怎么都无法上传,通过在网上查找资料终于解决了,下面将方法分享给大家,有需要的朋友们可以参考借鉴,下面来一起看看吧。
    2016-11-11
  • docker搭建Mycat实现读写分离的项目实践

    docker搭建Mycat实现读写分离的项目实践

    本文主要介绍了docker搭建Mycat实现读写分离的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • docker-compose启动springboot项目连接mysql问题

    docker-compose启动springboot项目连接mysql问题

    这篇文章主要介绍了docker-compose启动springboot项目连接mysql问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Docker拉取镜像部分成功部分失败的解决方案

    Docker拉取镜像部分成功部分失败的解决方案

    最近在部署 Zitadel 身份认证平台的过程中,遇到一个看似“随机”的问题:Docker 有些镜像可以拉取,有些却一直超时失败,最终通过配置 Docker 守护进程级别的代理 才解决,文章记录整个问题分析和解决过程,便于自己和大家后期参考,需要的朋友可以参考下
    2025-05-05
  • Docker部署golang环境详解

    Docker部署golang环境详解

    最近想学习一下golang,自己之前一直把环境全部安装在docker上,所以这次也想把golang的环境安装在docker上,先不废话,直接上手
    2022-08-08

最新评论