docker使用jenkins

Posted java-北京-菜鸟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker使用jenkins相关的知识,希望对你有一定的参考价值。

先说一下环境, 公司有一台测试机器, 上面装了docker, 就想着用docker部署jenkins, 然后将编译好的代码在宿主机上运行

docker的安装就不说了

jenkins的镜像用的是 jenkins/jenkins

docker pull jenkins/jenkins

然后创建容器, 我挂载了宿主机目录到容器目录, 防止删除容器后数据丢失

docker run  -p 40002:8080 -p 50000:50000 -v /www/jenkins/workspace:/var/jenkins_home --name jenkins -u root  jenkins/jenkins

访问 宿主机ip:40002, 等待完全jenkins完全启动, 使用docker logs jenkins 查看初始密码

登录jenkins, 输入初始密码, 安装插件, 我使用的是推荐安装, 等待安装完成即可

因为我要构建的是maven项目, 在创建项目的时候没有maven项目选项, 是因为没有安装maven插件, 在插件管理中搜索 Maven Integration, 直接安装即可

因为要通过ssh向宿主机传送构建好的文件, 所以需要安装 Publish Over SSH 插件, 直接搜索安装即可

配置工具

系统管理--->全局工具配置 

git的话直接使用默认的即可, jdk的话可以配置, 路径是 /usr/local/openjdk-8, 我是通过进入docker容器, 使用 echo $JAVA_HOME查看的

重点是maven, 新增maven, 自动安装, 不要用install from apache, 因为很慢, 使用镜像  https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz

需要将maven放到以下目录, 默认会解压到/www/jenkins/workspace/tools/hudson.tasks.Maven_MavenInstallation/apache-maven-3.6.3, 我没配置解压目录, 因为名字配置的是mvn, 所以可以把名字换成apache-maven-3.6.3, 也可以将解压的目录名改为mvn

/www/jenkins/workspace/tools/hudson.tasks.Maven_MavenInstallation/mvn

 

配置远程连接

配置管理--->系统配置, 找到 Publish over SSH, 

创建项目:

选择构建一个maven项目

 

 

添加gogs钩子

我们git仓库管理是用的gogs, 需要创建钩子

推送地址 是 

http(s)://<你的Jenkins地址>/gogs-webhook/?job=<你的Jenkins任务名>

然后点击测试推送

以上是关于docker使用jenkins的主要内容,如果未能解决你的问题,请参考以下文章

docker使用jenkins

Docker-in-Docker: Jenkins CI 内部如何运行 docker

jenkins学习11-通过SSH配置Linux宿主机为slave节点

在docker for windows运行jenkins时,docker不可用的问题

在docker for windows运行jenkins时,docker不可用的问题

docker存储bind mounts用法