Java中间件jenkins

docker 安装Jenkins

2021-12-15  本文已影响0人  樱花舞

1、docker安装Jenkins

在安装好docker之后,分别执行下面命令安装Jenkins:

#下载Jenkins镜像
docker pull jenkins/jenkins

#启动Jenkins
docker run -d -p 8080:8080 --name jenkins -v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock -v /root/jenkins:/var/jenkins_home jenkins/jenkins

注意:
-v /usr/bin/docker:/usr/bin/docker
-v /var/run/docker.sock:/var/run/docker.sock
这两个挂载不要改变,而且最好不要漏掉,不然可能会出现各种问题,(一开始我就是没加这两个,令人头秃)

-v /root/jenkins:/var/jenkins_home jenkins/jenkins
这个挂载是Jenkins的用户、构建项目的文件都是在这里,就算停掉或重启Jenkins这些都存在,以免数据丢失,/root/jenkins这路径是自定义的,改为自己的路径即可。

若Jenkins无法启动或Jenkins需要root用户,可以用root用户启动:-u root

docker run -d -p 8080:8080 --name jenkins -u root -v /usr/bin/docker:/usr/bin/docker -v /var/run/docker.sock:/var/run/docker.sock -v /root/jenkins:/var/jenkins_home jenkins/jenkins

2、Jenkins配置

输入地址:ip:8080访问Jenkins,刚开始进入会等一段时间初始化,然后输入管理员密码,密码在挂载的目录下:

#用自己定义的挂载目录
cat /root/jenkins/secrets/initialAdminPassword
登录.png

接下来的配置都可以先跳过,后续再登录时管理员的用户名默认是:admin,然后安装插件,这里选择推荐的即可,等插件安装完成。


推荐插件.png

3、构建发布spring boot的docker应用例子

构建发布一个spring boot的docker应用例子,先安装maven插件。


maven.png

安装完后,然后全局配置maven插件,其他没用到的插件不用配置:


全局.png
新建任务,选择构建maven项目,源码管理选择git,输入自己源码地址,以及用户名和密码。然后填写构建命令,其中-P dev是引用dev.yml的配置,结合pom文件的<profiles>使用。
构建.png

接下来就是重点,填写Jenkins完成打包jar后要执行的脚本,注意此位置是处于项目的根目录下,如/jenkins/workspace/app-test:


运行.png
# 此位置是在Jenkins的workspace目录下,先在服务器创建/app/app-test文件夹
path=../app/app-test
# 把dockerfile复制到/app/app-test文件夹
cp Dockerfile ${path}
# 把jar 包复制到/app/app-test文件夹
cp target/AppTest.jar ${path}
# 进入到/app/app-test文件夹
cd ${path}
# 我这里是把镜像和容器名都相同
app="app-test"
imagesid=`docker images|grep -i ${app}|awk '{print $3}'`
dockerid=`docker ps -a|grep -i ${app}|awk '{print $1}' `
#停止、删除容器
if  [ -n "$dockerid" ]  ;then
   docker stop $dockerid
   docker rm -f $dockerid
else
   echo 'dockerid is null'
fi
#删除镜像
if  [ ! -n "$imagesid" ];then
   echo $imagesid "is null"
else
    docker rmi $imagesid -f
fi
#构建新镜像
docker build -t ${app} .
#启动项目
docker run -d -p 8091:8091 --name ${app} ${app}

查看日志:

docker logs app-test

如果项目日志是输出到文件,可以挂载日志文件,方便保存和查看,在最后启动项目的shell脚本改为下面的,其中/xxx/xxx是服务器目录,/sss是代码配置的日志文件的相对路径,改为自己的即可。

#启动项目
docker run -d -p 8091:8091 -v /xxx/xxx:/sss --name ${app} ${app}
上一篇 下一篇

猜你喜欢

热点阅读