docker 部署 jenkins -jenkinsci/blueocean 发布 多模块微服务 springboot工程

  • 环境准备
  • 下载maven地址 https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
  • 一、拉取jenkins镜像
  • 二、运行jenkins镜像
  • 二、页面配置jenkins
  • 1.页面输入 ip:8080 访问jenkins
  • 2.获取密码
  • 3.推荐安装插件
  • 4.配置全局变量
  • 5.插件配置
  • 6.系统配置 ssh远程服务器信息
  • 三、部署多模块springboot项目
  • 1 新建maven项目



环境准备

1.CentOS 7
2.Docker  20.10.12
3.Jdk 1.8
4.mava3.3.9

下载maven地址 https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz

一、拉取jenkins镜像

docker pull jenkinsci/blueocean

二、运行jenkins镜像

docker run \
    -u root \
    --name jenkins \
    -d \
    -p 8080:8080 \
    -p 50000:50000 \
    -v jenkins-data:/var/jenkins_home \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /etc/localtime:/etc/localtime:ro \
    -v /home/docker/jenkins/mavenrepository/repository:/home/docker/jenkins/mavenrepository/repository \
    -v /usr/local/jdk1.8.0_181:/usr/local/jdk8 \
    -v /usr/local/apache-maven-3.6.3:/usr/local/maven3.6.3 \
    -v ~/.ssh:/var/jenkins_home/.ssh \
    jenkinsci/blueocean
  1. -u 指定操作用户
  2. -name 指定容器名称
  3. -d 后台启动
  4. -v jenkins-data:/var/jenkins_home 指定jenkins的数据源默认在(/var/lib/docker/jenkins-data/_data)
  5. -v /home/docker/jenkins/mavenrepository/repository:/home/docker/jenkins/mavenrepository/repository 指定mavan仓库的数据卷
  6. -v /usr/local/jdk1.8.0_181:/usr/local/jdk8 指定jdk的数据卷
  7. -v /usr/local/apache-maven-3.6.3:/usr/local/maven3.6.3 指定maven的数据卷

二、页面配置jenkins

1.页面输入 ip:8080 访问jenkins

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_docker

2.获取密码

[root@i-vzdytl5t jenkinsblue]# docker logs jenkins 
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:

271f66e863c74499aee96b5d910f65fc

This may also be found at: /var/jenkins_home/secrets/initialAdminPassword

*************************************************************
*************************************************************

3.推荐安装插件

安装速度很快建议选择第一个推荐安装

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_docker_02

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_maven_03


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_docker_04

4.配置全局变量

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_maven_05


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_apache_06


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_apache_07

5.插件配置

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_apache_08


如果没有这个插件 创建项目没有 maven项目

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_打包多个微服务到一个docker镜像中_09


不配置这个无法配置 远程ssh

6.系统配置 ssh远程服务器信息

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_打包多个微服务到一个docker镜像中_10


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_打包多个微服务到一个docker镜像中_11

  • 高级里配置远程服务器的密码
  • Remote Directory:相当于 远程登录到这个服务器的这个目录

三、部署多模块springboot项目

1 新建maven项目

打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_java_12


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_apache_13


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_docker_14


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_apache_15


打包多个微服务到一个docker镜像中 jenkins 微服务多服务打包_apache_16


项目结构

parent

: model1

: model2

: pom.xml

clean -pl 'model1,model2' install  -P dev,wuhan_maven,!pro -Dmaven.test.skip=true
  1. -pl 指定要打包的模块 多个用 英文逗号隔开 排除不打包某个模块 用感叹号 例如 -pl ‘!model3’
  2. -P 指定打包的环境 多个用英文逗号隔开
#!/bin/bash
#!/bin/sh
echo 'kill xxxx pid'
pid=`ps -ef | grep xxx.jar  |grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
  kill -9 $pid
fi
nohup /usr/local/jdk1.8.0_77/bin/java -jar xxxx.jar >/usr/local/logs/xxx.logs 2>&1 &
echo "start xxxx successful"

远程启动遇到的坑 java必须指定 全路径要不然不识别 java命令