乐趣区

关于docker:Jenkins-Docker-一键自动化部署-Spring-Boot-项目

本文章实现最简略全面的 Jenkins + Docker + Spring Boot 一键主动部署我的项目。步骤齐全,少走坑路。

  • 环境:CentOS7 + Git (Gitee)
  • 实现步骤:在 Docker 装置 Jenkins,配置 Jenkins 根本信息,利用 Dockerfile 和 Shell 脚本实现我的项目主动拉取打包并运行。

一、装置 Docker

装置社区版本 Docker CE

1. 确保 yum 包更新到最新

yum update

2. 卸载旧版本(如果装置过旧版本的话)

yum remove docker  docker-common docker-selinux docker-engine

3. 装置须要的软件包

yum install -y yum-utils device-mapper-persistent-data lvm2

4. 设置 yum 源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

5. 装置 Docker

yum install docker-ce  #因为 repo 中默认只开启 stable 仓库,故这里装置的是最新稳定版 17.12.0

6. 启动并设置开机启动

systemctl start docker

7. 验证装置是否胜利

docker version

二、装置 Jenkins

Jenkins 中武官网:https://www.jenkins.io/zh/

1. 装置 Jenkins

Docker 装置一切都是那么简略。留神查看 8080 是否曾经占用,如果占用请批改端口。

docker run --name jenkins -u root --rm -d -p 8080:8080 -p 50000:50000 -v /var/jenkins_home:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock jenkinsci/blueocean

如果没改端口号的话,装置实现后拜访地址:

http://{部署 Jenkins 所在服务 IP}:8080

此处会有几分钟的等待时间。

2. 初始化 Jenkins

详情见官网教程:https://www.jenkins.io/zh/doc

2.1 解锁 Jenkins

# 进入 Jenkins 容器 

2.2 装置插件

抉择第一项: 装置举荐的插件

2.3 创立管理员用户

此账户信息肯定要记住哦。

三、系统配置

1. 装置须要插件

进入【首页】–【系统管理】–【插件治理】–【可选插件】。搜寻以下须要装置的插件,点击装置即可。

  • 装置 Maven Integration
  • 装置 Publish Over SSH(如果不须要近程推送,不必装置)
  • 如果应用 Gitee 码云,装置插件 Gitee(自带 Git 不必独自装置)

2. 配置 Maven

进入【首页】–【系统管理】–【全局配置】,拉到页面最下方 maven–maven 装置。

四、创立工作

1. 新建工作

点击【新建工作】,输出工作名称,点击构建一个自在格调的软件我的项目。

2. 源码治理

点击【源码治理】–【Git】,输出仓库地址,增加凭证,抉择好凭证即可。

3. 构建触发器

点击【构建触发器】–【构建】–【减少构建步骤】–【调用顶层 Maven 指标】–【「填写配置」】–【保留】。

此处命令只是 install,看是否能生成 jar 包。

clean install -Dmaven.test.skip=true

4. 保留

点击【保留】按钮即可。

五、测试

该功能测试是否能失常打包。

1. 构建

点击构建按钮。

2. 查看日志

点击正在构建的工作,或者点击工作名称进入详情页面,查看控制台输入。看是否能胜利打成 jar 包。

该处日志第一次可能下载依赖 jar 包失败,再次点击构建即可胜利。

3. 查看我的项目地位

cd /var/jenkins_home/workspace

六、运行我的项目

因为我的项目和 Jenkins 在同一台服务器,所以咱们用 Shell 脚本运行我的项目,原理既是通过 Dockerfile 打包镜像,而后 docker 运行即可。

1. Dockerfile

在 Spring Boot 我的项目根目录新建一个名为 Dockerfile 的文件,留神没有后缀名。

其内容如下:(大抵就是应用 JDK 8,把 jar 包增加到 docker 而后运行 prd 配置文件。具体能够查看其余教程)

FROM jdk:8

2. 批改 Jenkins 工作配置

配置如下:

“-t” 指定新镜像名,”.” 示意 Dockfile 在以后门路。

cd /var/jenkins_home/workspace/zx-order-api

备注:
1. 上图用了 docker logs -f 是为了不便看日志,实在环境不要用,因为会始终期待日志,构建工作会失败;
2. 加 “|| true” 是如果命令执行失败也会持续履行,为了避免第一次没有该镜像报错;

3. 保留:点击保留即可;

4. 构建:查看 Jenkins 控制台输入,输入如下,证实胜利;

5. 验证

docker ps # 查看是否有本人的容器 
退出移动版