docker端口映射后访问不了_docker+jenkins实现持续集成

持续集成的概念我就不多说了,网上一大堆,今日主要讲讲怎么通过docker 和jenkins实现项目的持续集成。看着简单,网上完整教程很少,本人摸索很久才搞定!!!

一、首先安装docker。安装过程可以自行百度

二、通过docker拉取jenkins镜像:拉取镜像也很简单,可直接通过docker pull jenkins即可获取。也可从docker.hub上获取官方长期支持的镜像:docker pull jenkins/jenkins:lts

三、获取到镜像后。可通过docker images来查看 已获取到的镜像列表

5b9003352aa45fbc5e23c1f35ffde02c.png

已有的镜像列表

四、开始运行jenkins镜像

运行jenkins前首先明确几点:

1、端口映射:通过端口映射的方式将容器的相关端口映射到主机上

(1)jenkins是一个镜像,通过运行jenkins镜像,产生jenkins容器,容器寄主在主机上,想访问jenkins容器,就得通过主机访问,此时就需要一个容器与主机的映射端口:-p 主机映射端口号:容器端口号(-p 12000:8080)

(2)同理,访问了jenkins容器后,需要对jenkins的持续集成进行相关配置与项目的配置,项目在jenkins容器中,访问项目也需要将项目端口号映射到主机,同上-p 主机映射端口号:项目端口号(-p 8090:8090)

2、挂载:通过挂载的方式将容器的文件路径挂载到主机目录下

(1)maven仓库挂载:减少每次构建项目时maven依赖从远程拉取的工作-v 主机目录:jenkins目录(-v /opt/repository:/opt/repository)

(2)jar包文件挂载:将打好的jar包通过挂载到主机上

了解以上几点后,开始运行jenkins

docker run -d -u root -p 11000:8080 -p 11089:8089 -v /opt/repository/:/opt/repository/ -v /var/jenkins_home/:/var/jenkins_home/ -v /jenkins/project/:/jenkins/project/ 5907903170ad

通过docker ps -s查看正在运行的镜像

1f5e10d2778a1d0b52fb9efd2b9b7812.png

jenkins镜像已运行

接下来需要访问jenkins:http://localhost:11000

5d01850b59bf9e16a3dac9bb578b7f79.png

jenkins

稍等片刻。

e99a61eaa0fb658eaeed629eb78d1a6d.png

根据提示寻找登录密码

cat /var/jenkins_home/secrets/initialAdminPassword
09b9448c6a568039e1bc9fb5e2e94a32.png

输入密码后,等待登录。

e59f676b270f8cd1204cf6fd5fd19cfd.png

下载插件

选择 左边的install supported plugins下载插件,下载过程有点慢,请耐心等待。

插件下载完成后,完成用户信息,密码用登录的密码

97fe57b06016a0c26ebe01a01fb30bd7.png

在主机上将jdk与maven的目录复制到jenkins_home下

6b4e104f0b62802eecb2632a5473fff2.png

配置jenkins:

08d0bcb6cc607b6fdcd3cc471dab1f3b.png

配置settings.xml与jdk和maven

623e1bfd6417a38458df80482028e61c.png
5f5c89f169508022aabe5e8116c8fd06.png

配置完成后,需要再下载一个插件:Maven Integration

d13192336b044171bcdb5cad77e8f814.png
050d767c7a4ef6fba7cf5ffb9f92f8e1.png

接下来开始配置项目了:

回到jenkins首先,create new job

a10c827908da70c52184232ca7a4dcbe.png

配置git信息

4533540d9af954a936cc5c29b023c948.png

配置打包信息与项目执行脚本

5d47bfde2cacdc324cffd616649635c5.png

执行脚本:

#!/bin/bash -ileproject=jenkins.jarpathName=springboot_jenkinsecho "拷贝文件"rm -rf /jenkins/project/$projectcp /var/jenkins_home/workspace/$pathName/target/$project /jenkins/project/echo "切换路径"cd /jenkins/project/ pid=`ps -ef | grep $dir$project | grep -v grep | awk '{print $2}'`if [ -n "$pid" ]then kill -9 $pid echo "杀死存在进程"fiBUILD_ID=dontKillMe echo "执行"nohup java -jar $project &echo "启动成功!"

配置好之后,就开始构建项目了:

6a32c23cc4e7e1bd53671108c0f54316.png

jenkins构建成功:

1fed8563ce5105135e7806ac23b089ab.png

构建成功

c75e6a289b17871e5c79631afe64c368.png

现在访问项目:

http://ip:11089/test/a

f87fcbcba8b706ae570b0d2c2d284fc7.png

项目运行成功

到此结束,以后只要把项目更新到git上,可以定时构建项目,也可以手动触发构建。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值