基于Jenkins自动打包并部署docker环境的操作过程

 更新时间:2023年08月28日 08:27:03   作者:so be it  
这篇文章主要介绍了基于Jenkins自动打包并部署docker环境,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

实验环境

操作系统

IP地址

主机名

角色

CentOS7.5

192.168.200.111

git

git服务器

CentOS7.5

192.168.200.112

Jenkins git客户端

jenkins服务器

CentOS7.5

192.168.200.113

docker

web服务器

1、安装docker-ce

在192.168.200.113上创建远程目录。

[root@tomcat ~]# mkdir /data

在192.168.200.113 机器上,构建 tomcat基础镜像。在构建基础镜像之前需要先安装 Docker 与 JDK。

[root@tomcat ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

[root@tomcat ~]# yum -y install yum-utils device-mapper-persistent-data lvm2

[root@tomcat ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

[root@tomcat ~]# ls /etc/yum.repos.d/

[root@tomcat ~]# yum -y install docker-ce

[root@tomcat ~]# systemctl start docker[root@tomcat ~]# systemctl enable docker

[root@tomcat ~]# docker version

2、阿里云镜像加速器

[root@tomcat ~]# cat << END > /etc/docker/daemon.json {         "registry-mirrors":[ "https://nyakyfun.mirror.aliyuncs.com" ] }END

[root@tomcat ~]# systemctl daemon-reload[root@tomcat ~]# systemctl restart docker

导入centos 7

[root@tomcat ~]# cat centos-7-x86_64.tar.gz | docker import - centos:7

[root@tomcat ~]# docker images

3、构建tomcat 基础镜像 

[root@tomcat ~]# mkdir docker-tomcat[root@tomcat ~]# cd docker-tomcat/

在这期间导入:apache-tomcat-8.5.40.tar.gz 和 jdk-8u191-linux-x64.tar.gz

[root@tomcat docker-tomcat]# vim dockerfile

 FROM centos:7

MAINTAINER from crushlinux <crushlinux@163.com>

#copy jdk and tomcat into image

ADD ./apache-tomcat-8.5.40.tar.gz /usr/local/

ADD ./jdk-8u191-linux-x64.tar.gz /usr/local

#set variable

ENV JAVA_HOME /usr/local/jdk1.8.0_191

ENV PATH $JAVA_HOME/bin:$PATH

#container starts up

ENTRYPOINT /usr/local/apache-tomcat-8.5.40/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.40/logs/catalina.out

[root@tomcat docker-tomcat]# docker build -t tomcat:v1  .

 4、构建一个Maven项目 

在以上配置完成后,回到 Jenkins 首页,选择“新建任务”,然后输入一个任务名称 “probe-docker”,并选择“Maven project”配置项,点击当前页面下方的“确定”按钮。

 在点击“确定”按钮,选择“源码管理”并选中“Git”,设置“Repository URL”地址。

选择“Build”-> clean package -Dmaven.test.skip=true

在上一步后面选择“构建后操作”中的“Send build artfacts over SSH”选项并进行。

 scp 192.168.200.112:/root/.jenkins/workspace/probe-docker/psi-probe-web/target/probe.war /data/

docker run -itd --name tomcat-test -p 8090:8080 -v /data:/usr/local/apache-tomcat-8.5.40/webapps tomcat:v1 

以上全部配置完成后,点击保存即可。然后点击刚才创建的工程任务“probe-docker“->” Build new”直至任务构建完成。开始构建过程中可以点击进度条查看

 可以看到此工程任务已构建成功,并且在构建后,创建用于docker项目的 Docker Web 环境命令也执行成功。

[root@tomcat ~]# ls /data

[root@tomcat ~]# docker ps -a

 [root@tomcat ~]#docker exec -it 5e /bin/bash

[root@5eaecb826ff6 /]# vim /usr/local/apache-tomcat-8.5.40/conf/tomcat-users.xml

<role rolename="manager-gui"/>

  <role rolename="admin-gui"/>

  <user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>

</tomcat-users> # 在此行前加入上面三行

[root@5eaecb826ff6 /]# cd /usr/local/apache-tomcat-8.5.40/conf

[root@5eaecb826ff6 conf ]# /usr/local/apache-tomcat-8.5.40/conf/

 [root@5eaecb826ff6 conf ]# /usr/local/apache-tomcat-8.5.40/bin/startup.sh

访问:192.168.200.113:8090/prode

用户:tomcat

密码:tomcat

到此这篇关于基于Jenkins自动打包并部署docker环境的文章就介绍到这了,更多相关Jenkins自动打包并部署docker环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • IntelliJ IDEA maven 构建简单springmvc项目(图文教程)

    IntelliJ IDEA maven 构建简单springmvc项目(图文教程)

    在工作当中,我们有时需要创建一个全新的工程,而基于spring-mvc web的工程较为常见,这篇文章主要介绍了IntelliJ IDEA maven 构建简单springmvc项目(图文教程),感兴趣的小伙伴们可以参考一下
    2018-05-05
  • java springboot中如何读取配置文件的属性

    java springboot中如何读取配置文件的属性

    大家好,本篇文章主要讲的是java springboot中如何读取配置文件的属性,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-01-01
  • SpringBoot创建RSocket服务器的全过程记录

    SpringBoot创建RSocket服务器的全过程记录

    RSocket应用层协议支持 Reactive Streams语义, 例如:用RSocket作为HTTP的一种替代方案。这篇文章主要给大家介绍了关于SpringBoot创建RSocket服务器的相关资料,需要的朋友可以参考下
    2021-05-05
  • MyBatis-plus-3.5.9 的分页功能修复问题记录

    MyBatis-plus-3.5.9 的分页功能修复问题记录

    文章指出因前端JS精度限制,后端返回的长整型ID在展示时出现末两位丢失问题,解决方法为在后端配置将ID转为字符串返回,修复分页功能,确保数据准确性,本文给大家介绍MyBatis-plus-3.5.9的分页功能修复问题记录,感兴趣的朋友一起看看吧
    2025-07-07
  • JAVA String类中的一些常用方法示例详解

    JAVA String类中的一些常用方法示例详解

    在我们的工作中,常常要对一个字符串进行一些操作,这里提供一些常用的方法,常常需要这些方法进行组合处理字符串,这篇文章主要给大家介绍了关于JAVA String类中的一些常用方法,需要的朋友可以参考下
    2023-10-10
  • Java MD5消息摘要算法原理及实现代码

    Java MD5消息摘要算法原理及实现代码

    这篇文章主要介绍了Java MD5消息摘要算法原理及实现代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • 解决Idea启动Spring Boot很慢的问题

    解决Idea启动Spring Boot很慢的问题

    这篇文章主要介绍了解决Idea启动Spring Boot很慢的问题,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-12-12
  • logback整合rabbitmq实现消息记录日志的配置

    logback整合rabbitmq实现消息记录日志的配置

    这篇文章主要介绍了logback整合rabbitmq实现消息记录日志的配置,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-12-12
  • Java ScheduledExecutorService的具体使用

    Java ScheduledExecutorService的具体使用

    ScheduledExecutorService有线程池的特性,也可以实现任务循环执行,本文主要介绍了Java ScheduledExecutorService的具体使用,具有一定的参考价值,感兴趣的可以了解一下
    2023-05-05
  • Java中get/post的https请求忽略ssl证书认证浅析

    Java中get/post的https请求忽略ssl证书认证浅析

    因为Java在安装的时候,会默认导入某些根证书,所以有些网站不导入证书,也可以使用Java进行访问,这篇文章主要给大家介绍了关于Java中get/post的https请求忽略ssl证书认证的相关资料,需要的朋友可以参考下
    2024-01-01

最新评论