当前位置:   article > 正文

基于Jenkins的Devops(配合Docker,Gitee)实现CI/CD_jenkins结合gitee

jenkins结合gitee

本篇展示两个微服务,一个微服务含数据库,一个不含数据库。

一、Gitee目录结构

在这里插入图片描述

详见gitee具体文件目录
为后续Dockerfiledocker-compose.yml使用

.

二、Dockerfile编写

service1:

FROM java:8
  
COPY ./docker01-0.0.1-SNAPSHOT.jar /app.jar

EXPOSE 6001

ENTRYPOINT ["java","-jar","/app.jar"]                                     
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

service2类似。

.

三、docker-compose.yml编写

version: '3'
services: 

  service1:                        # 微服务名
    #image: xxx                    # 若build和image共存,则将Dockerfile构建的镜像名指定为xxx
    build: 
      context: ./Dockerfile/service1          # 构建Dockerfile路径
      dockerfile: Dockerfile       # Dockerfile名
    container_name: service1       # 不指定默认 当前路径_服务名_服务数量,数量对应(scale)
    ports:
      - "6001:6001"
    depends_on: 
      - "service1_mysql"           # 依赖服务 

  service2: 
    build: 
      context: ./Dockerfile/service2
      dockerfile: Dockerfile
    container_name: service2
    ports: 
      - "6002:6002"

  service1_mysql: 
    image: mysql:5.7
    container_name: service1_mysql
    ports: 
      - "3307:3306"
    volumes: 
      - /home/testCompose/mydata/mysql/log:/var/log/mysql
      - /home/testCompose/mydata/mysql/data:/var/lib/mysql
      - /home/testCompose/mydata/mysql/conf:/etc/mysql
    environment:
      MYSQL_ROOT_PASSWORD: "root"

      
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35

正常执行以下命令就可以容器编排了,但是这次演示的是CI/CD
1.docker-compose build
2.docker-compose up

.

四、jenkins下载(本次使用docker)

docker run -d --name jenkins -p 8099:8080 -v /opt/data/jenkins_home:/var/jenkins_home jenkins/jenkins
  • 1

初始默认安装插件就行
后续简直接进入就行。

1)几个插件记得安装:

1.maven (打包文件)
2.Publish over ssh (发文件)
3.Gitee (托管代码,jenkins监听)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
由于不知啥情况,个人下载maven用不了,自己在本机下的maven拖进去的。

.

2)maven,ssh环境变量配置:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

.

3)跟着Gitee官网配置

在这里插入图片描述

注意:其中gitee给Jenkins发消息,需要能联通网络,如果是内网,注意使用内网穿透。

.

五、开始写Jenkins执行流程

构建四流程
1.提交代码到gitee,自动拉取code √

2.jenkins容器使用maven打包项目获得新jar包 √

3.发送新jar包和Dockerfile以及docker-compose到宿主机 √

4.宿主机执行docker-compose.yml √

在这里插入图片描述
在这里插入图片描述

1)提交代码到gitee,自动拉取code √

webhook自动完成。

.

2)jenkins容器使用maven打包项目获得新jar包

在这里插入图片描述

.

3)发送新jar包和Dockerfile以及docker-compose到宿主机 √

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4)宿主机执行docker-compose.yml √

在这里插入图片描述

六、测试

在这里插入图片描述
之后只要提交gitee代码,就可以自动部署了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/130703?site
推荐阅读
相关标签
  

闽ICP备14008679号