失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 使用Docker安装Gitlab Jenkins Tomcat搭建流水线项目环境 实现DevOps自动化步骤 很详细

使用Docker安装Gitlab Jenkins Tomcat搭建流水线项目环境 实现DevOps自动化步骤 很详细

时间:2021-11-26 05:25:21

相关推荐

使用Docker安装Gitlab Jenkins Tomcat搭建流水线项目环境 实现DevOps自动化步骤 很详细

使用Docker安装Gitlab,Jenkins,Tomcat搭建流水线项目,实现DevOps自动化

写在前头,入职公司不久,发现公司都是用的Jenkins来实现自动化项目部署,十分方便,但作为底层开发人员,接触的不是很多,所以特地来详细的学习一下,扩充一下自己的技术栈!

以下内容需要拥有docker的基础知识,大家也可以多看看我之前的博客,都很详细。

我这里采用的是Docker容器化技术来安装的,方便,简单,环境如下:

阿里云服务器一台 Centos7.6.4已安装好的Docker环境(详细看我之前的博客:Docker入门全教程)

Docker安装Gitlab

1、gitlab的安装

# 搜索gitlab镜像[root@pihao /]# docker search gitlab --filter=STARS=500NAME DESCRIPTION STARS gitlab/gitlab-ce GitLab Community Edition docker image based … 2935sameersbn/gitlab Dockerfile to build a GitLab image for the D… 1152gitlab/gitlab-runner GitLab CI Multi Runner used to fetch and run… 615 # 我这里选择的是 gitlab/gitlab-ce最新版的镜像[root@pihao /]# docker pull gitlab/gitlab-ceUsing default tag: latestlatest: Pulling from gitlab/gitlab-cee92ed755c008: Already exists713c8b67b945: Pull completeDigest: sha256:381c96323b10847583133ab6177feb8e6d69fd38a55d9d1c3872fa7b18025c2eStatus: Downloaded newer image for gitlab/gitlab-ce:latestdocker.io/gitlab/gitlab-ce:latest# 拉取成功[root@pihao /]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEgitlab/gitlab-celatest 2b9ac1a40dd1 2 days ago1.81GB

2、gitlab的运行

# -p 端口映射(80端口是gitlab内部绑定的端口)# -v 数据文件挂载 将文件都挂到我本机的/home目录下面# --name 取别名[root@pihao home]# docker run -d -p 8443:443 -p 8090:80 -p 222:22 --name gitlab -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-cef33cab7b2854e0131c388b6bf8b5bd609da9a4ea166226c9c8301b2c9673a8f5# 查看容器是否启动成功[root@pihao home]# docker psCONTAINER ID IMAGECOMMAND CREATED STATUS f33cab7b2854 gitlab/gitlab-ce "/assets/wrapper" 5 seconds ago Up 4 seconds (health: starting) 22/tcp, 0.0.0.0:8090->80/tcp, 0.0.0.0:8443->443/tcp gitlab[root@pihao home]# 启动成功

3、修改gitlab默认的配置文件

修改gitlab.rb配置文件

[root@pihao /]# vim /home/gitlab/config/gitlab.rb# 找到 external_url 这个属性配置,把注释去掉并且把它设置为你主机的地址注意,这里主机地址的后面不能加端口(这是一个坑),加了端口之后不能访问gitlab的页面!!! 如: external_url 'http://112.74.167.52'# 再将配置文件中以下的两个注释打开[root@pihao /]# gitlab_rails['gitlab_shell_ssh_port'] = 22[root@pihao /]# gitlab_rails['gitlab_shell_git_timeout'] = 800

修改gitlab.yml文件

[root@pihao /]# vim /home/gitlab/data/gitlab-rails/etc/gitlab.yml# 这里只需要设置你的主机ip以及端口;这里会显示在github的克隆地址!!!gitlab:## Web server settings (note: host is the FQDN, do not include http://)host: 112.74.167.52 # 宿主机的ip地址port: 8090 # https: false

OK,配置到这里,Gitlab页面就能正常访问了,http://112.74.167.52:8090,一般来说,第一次访问页面的时候可能会报502错误。莫慌!!!这是因为gitlab刚刚启动,很多功能还没启动起来,稍等一分钟即可正常访问!

访问如下:

使用方才设置的密码,然后使用root账号登入

进入的页面如下:

点击create a project,创建如下工程:

4、上传代码到gitlab

OK,现在我们已经搭建好gitlab服务器,并且创建了一个名叫upload-test-01的工程,那么接下来将往该工程中提交代码

复制工程的URL

复制URL,使用Eclipse或者IDEA将代码推送到仓库

推送成功

Docker安装Jenkins

Gitlab服务器已经搭建完毕,现在开始搭建Jenkins服务器

1、Jenkins的安装

写在前头,不要使用jenkins官方最新的那个镜像,那个已经不推荐使用了,很多的插件不支持安装,网上浏览了很多的博客,发现大家用的最多的是这个镜像 jenkins/jenkins:lts,而这些jenkins容器默认都是已经装好了jdk的环境的,由于我们后面需要整合maven对项目进行打包,那么我们还要在这个镜像中搭建好maven的环境。

拉取jenkins/jenkins:lts镜像

# 镜像搜索jenkins[root@iZwz9eq1jai7e87n6vw5liZ /]# docker search jenkins --filter=STARS=500NAME DESCRIPTION STARSjenkinsOfficial Jenkins Docker image4806jenkins/jenkins The leading open source automation server 2084jenkinsci/blueocean https://jenkins.io/projects/blueocean 527# 拉取jenkins/jenkins:lts镜像[root@iZwz9eq1jai7e87n6vw5liZ /]# docker pull jenkins/jenkins:ltslts: Pulling from jenkins/jenkins3192219afd04: Pull completeDigest: sha256:83df661d1a2ad921323868ca48f432b175b039bb9e16be0209c0253f3186f25eStatus: Downloaded newer image for jenkins/jenkins:ltsdocker.io/jenkins/jenkins:lts# 拉取成功[root@iZwz9eq1jai7e87n6vw5liZ /]# docker imagesREPOSITORYTAG IMAGE ID CREATED SIZEjenkins/jenkinslts 5d1103b93f92 2 weeks ago 656MB# 查看该镜像的环境变量[root@iZwz9eq1jai7e87n6vw5liZ /]# docker inspect 5d1103b93f92

发现上述镜像默认安装jdk1.8,并且配置好了PATH,但是没有安装maven,为了方便我们后面,我们在这个镜像中添加maven的环境,那么就需要我们在这个镜像的基础上再去创建一个我们自己的jenkins镜像,而这个镜像是有maven环境的!!!那么如何开始呢??

创建带有maven环境的jenkins镜像
准备好一个maven的安装包

maven安装包下载地址:/download.cgi

# 我把这个maven的安装包放到了 /home目录下[root@iZwz9eq1jai7e87n6vw5liZ home]# lsapache-maven-3.6.3-bin.tar.gz readme.txt #(这个readme.txt只是一个镜像使用的说明文件,随便自己定义内容)[root@iZwz9eq1jai7e87n6vw5liZ home]#

编写Dockfile文件

说明,我们自定义构建镜像就是根据这个Dockerfile文件来进行的!

# 创建Dockerfile文件[root@iZwz9eq1jai7e87n6vw5liZ home]# vim Dockerfile(注意:官方推荐命名,D是大写的)# 输入以下内容: (不包括 # 后面的注释的内容)

FROM jenkins/jenkins:lts # 以哪个基础镜像开始构建MAINTAINER pihao<827699764@> # 镜像作者的信息COPY readme.txt /var/jenkins_home/readme.txt # 复制方才的使用说明文件到镜像内部ADD apache-maven-3.6.3-bin.tar.gz /var/jenkins_home/ # 添加需要的整合的内容,会自动解压ENV MYPATH /var/jenkins_home/ # 添加环境WORKDIR $MYPATH # 容器启动后就切换到的目录ENV MAVEN_HOME /var/jenkins_home/apache-maven-3.6.3 # 添加maven的环境变量,就跟安装jdk差不多ENV PATH $PATH:$MAVEN_HOME/bin # 将maven的变量加到总的PATH当中

构建镜像

[root@iZwz9eq1jai7e87n6vw5liZ home]# lsapache-maven-3.6.3-bin.tar.gz Dockerfile jdk-8u251-linux-x64.tar.gz readme.txt# docker build 命令构建镜像(注意后面的 . 一定要加上,这里会自动寻找到Dockerfile文件,所以不用指定名字)[root@iZwz9eq1jai7e87n6vw5liZ home]# docker build -t myjenkins .Sending build context to Docker daemon 204.6MBStep 1/8 : FROM jenkins/jenkins:lts---> 5d1103b93f92Step 2/8 : MAINTAINER pihao<827699764@>---> Running in 9edb275b5e76Removing intermediate container 9edb275b5e76---> 6e2357116d49Step 3/8 : COPY readme.txt /var/jenkins_home/readme.txt---> f76bcbf77b93Step 4/8 : ADD apache-maven-3.6.3-bin.tar.gz /var/jenkins_home/---> 44f6f2cf3182Step 5/8 : ENV MYPATH /var/jenkins_home/---> Running in 44e048cbe299Removing intermediate container 44e048cbe299---> e792ce76fb54Step 6/8 : WORKDIR $MYPATH---> Running in 2fa21e5f5860Removing intermediate container 2fa21e5f5860---> 4d0194703fcaStep 7/8 : ENV MAVEN_HOME /var/jenkins_home/apache-maven-3.6.3---> Running in 0f12c7d8844dRemoving intermediate container 0f12c7d8844d---> c067e3490a5bStep 8/8 : ENV PATH $PATH:$MAVEN_HOME/bin---> Running in da8739ed9fd2Removing intermediate container da8739ed9fd2---> 02556376487fSuccessfully built 02556376487fSuccessfully tagged myjenkins:latest # 说明构建成功# 查看我们自己构建的镜像[root@iZwz9eq1jai7e87n6vw5liZ home]# docker imagesREPOSITORYTAG IMAGE ID CREATED SIZEmyjenkins latest 02556376487f 2 minutes ago 667MBjenkins/jenkinslts 5d1103b93f92 2 weeks ago 656MB[root@iZwz9eq1jai7e87n6vw5liZ home]#

这里我们再增加一步,那就是配置maven 本地仓库以及更换maven里面的镜像,我们更换成阿里云的镜像

# 编辑 maven的settings.xml配置文件[root@iZwz9eq1jai7e87n6vw5liZ /]# lsbin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var[root@iZwz9eq1jai7e87n6vw5liZ /]# cd var/lib/docker/volumes/myjenkins/_data/# 创建maven的本地仓库[root@iZwz9eq1jai7e87n6vw5liZ /]# mkdir maven_repo [root@iZwz9eq1jai7e87n6vw5liZ /]# cd apache-maven-3.6.3/conf/[root@iZwz9eq1jai7e87n6vw5liZ conf]# lslogging settings.xml toolchains.xml[root@iZwz9eq1jai7e87n6vw5liZ conf]# vim settings.xml

添加阿里的镜像

<mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>Nexus aliyun</name><url>/nexus/content/groups/public</url></mirror>

OK

2、jenkins的运行

好,现在带有maven环境的jenkins镜像已经构建完毕,接下来应该运行这个镜像 run

# 运行容器[root@iZwz9eq1jai7e87n6vw5liZ myjenkins]# docker run -d -p 8088:8080 -p 50000:50000 -v myjenkins:/var/jenkins_home --name myjenkins myjenkins591fe973fd4b9095c904b36cc333bf4d385b3e9958e8cfa995d833a18da52e44# 查看运行的容器[root@iZwz9eq1jai7e87n6vw5liZ myjenkins]# docker psCONTAINER ID IMAGECOMMAND CREATED 591fe973fd4b myjenkins "/sbin/tini -- /usr/…" 34 seconds agoUp 33 seconds 0.0.0.0:50000->50000/tcp, 0.0.0.0:8088->8080/tcp myjenkins[root@iZwz9eq1jai7e87n6vw5liZ myjenkins]#

容器运行到这里其实已经可以访问jenkins的页面了,但为了确保我们运行的容器环境无误,我们先进入容器内部确认一下 jdk,maven,以及相应的PATH

检查镜像内容是否安装了maven等相应的环境

# 进入容器内容[root@iZwz9eq1jai7e87n6vw5liZ myjenkins]# docker exec -it myjenkins /bin/bash# 查看jdk版本jenkins@591fe973fd4b:~$ java -versionopenjdk version "1.8.0_242"OpenJDK Runtime Environment (build 1.8.0_242-b08)OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)# 查看maven版本jenkins@591fe973fd4b:~$ mvn -v Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)Maven home: /var/jenkins_home/apache-maven-3.6.3Java version: 1.8.0_242, vendor: Oracle Corporation, runtime: /usr/local/openjdk-8/jreDefault locale: en, platform encoding: UTF-8OS name: "linux", version: "3.10.0-1062.18.1.el7.x86_64", arch: "amd64", family: "unix"# 确认完毕,jenkins的环境无误!!!,如果不能正确显示相应的版本,那就有问题了,赶紧检查一下。# 接下来我们就能放心访问jenkins的页面了

3、Jenkins的登入

jenkins默认的登入端口是8080,由于我们用8088做了映射,所以可以访问 http://IP:8088

登入jenkins页面

第一次访问如下图:

稍等几分钟后

进入容器内容,根据页面提示获取到加密串

# 进入容器获取加密串[root@iZwz9eq1jai7e87n6vw5liZ updates]# docker exec -it myjenkins /bin/bash# catjenkins@591fe973fd4b:~$ cat /var/jenkins_home/secrets/initialAdminPasswordf0da74842a5d4daa8465f14baff3b5f7 # 将这个加密串粘贴到页面上jenkins@591fe973fd4b:~$

登入后的页面如下:

刚开始我们点击选择插件来安装

创建第一个管理员账户完毕之后点击保存然后确认开始jenkins

配置jenkins的下载加速

点击Availavle,等到页面完全加载完毕之后(一点要等到页面全部在加载之后)

然后进入我们的挂载文件目录 /var/lib/docker/volume/myjenkins/_data/updates目录修改default.json文件

执行如下命令:

[root@iZwz9eq1jai7e87n6vw5liZ updates]# sed -i 's/http:\/\/updates.jenkins-\/download/https:\/\/mirrors.tuna.\/jenkins/g' default.json && sed -i 's/http:\/\//https:\/\//g' default.json[root@iZwz9eq1jai7e87n6vw5liZ updates]# 下载地址已经替换完毕,不相信的我们可以来查看一下[root@iZwz9eq1jai7e87n6vw5liZ updates]# vim default.json# 我们发现已经换成了 百度的地址了

default.json修改完毕之后我们再回来前端页面上:

将上面Update Site 输入框内容替换成如下:清华大学更新地址

https://mirrors.tuna./jenkins/updates/update-center.json

点击summit,完毕之后重启页面 restart,然后从新输入账号密码完成登入操作!

至此,Jenkins加速的操作配置完成。

4、Jenkins的插件安装

加速的配置我们已经完毕,接下来就是安装一些插件。在这里,我们先安装几个必须的插件

安装中文汉化插件 Localization:Chinese

完毕后重启界面

汉化后界面

安装权限控制插件 Role-based Authorization Strategy

安装完毕之后设置权限策略:

安装凭证插件 Credentials Binding

安装后效果:

安装Git插件

5、Jenkins拉取Gitlab代码的两种方式

好,现在必要的插件也都安装完毕,接下来我们从Gitlab拉取代码到Jenkins,那这里就要介绍一下凭据的用处了!

Username with password (常用) 就是拉取代码时的账号和密码SSH username with private key (常用) 需要配置公钥以及私钥Secret fileSecret textCretificate
采用http的方式拉取代码

之前我们已经上传过一个最基本的Springboot项目到Gitlab,现在我们把它拉取到 Jenkins

先添加一个凭据用于等下拉取代码

构建一个自由风格的项目

查看构建信息

至此,项目已经构建完毕,也就是说已经从Gitlab获取到了源码!!!

采用ssh的方式拉取代码

接下来我们再来看另一种凭据的使用 SSH,要想使用SSH的方式,那我们需要先 生成公钥和私钥,公钥需要保存到Gitlab上,私钥需要保存到 Jenkins上,很多小伙伴有疑问了,这个密钥到底在哪生成呢?是在宿主机上还是docker的容器内部呢?简单分析一下,jenkins拉取代码肯定是从容器内容用Git拉取的,这里说了说了,之前只说了Jenkins默认安装了jdk的环境,其实,jenkins还默认安装了Git ,所以这个密钥是需要在容器内部生成的。

在容器内部生成公钥和私钥

# 进入jenkins容器[root@iZwz9eq1jai7e87n6vw5liZ ~]# docker exec -it myjenkins /bin/bash# ssh-keygen -t rsajenkins@591fe973fd4b:~$ ssh-keygen -t rsaGenerating public/private rsa key pair.Enter file in which to save the key (/var/jenkins_home/.ssh/id_rsa): # 直接回车(存放目录)Created directory '/var/jenkins_home/.ssh'.Enter passphrase (empty for no passphrase): # 直接回车Enter same passphrase again: # 直接回车Your identification has been saved in /var/jenkins_home/.ssh/id_rsa.Your public key has been saved in /var/jenkins_home/.ssh/id_rsa.pub.The key fingerprint is:SHA256:hRu7ogjttrYBVOvI/RgjkGOhtICyAZQtdzkB7+Wc/7M jenkins@591fe973fd4bThe key's randomart image is:+---[RSA 2048]----+|*+oo..o||B++oo+ . ||**o.....o .||*.+ . + .= ||.+ = . +S || o. = .. ||. o. .. .. || ooo . . ..|| o=o.Eo |+----[SHA256]-----+ # 出现这个图像说明密钥已经生成完毕# 切换到密钥存放目录jenkins@591fe973fd4b:~$ cd .ssh/jenkins@591fe973fd4b:~/.ssh$ lsid_rsa(私钥) id_rsa.pub(公钥)# 查看公钥内容jenkins@591fe973fd4b:~/.ssh$ cat id_rsa.pubssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCt34S7j5/wxW13xfJOqseQSlf3FPPxky0zMfhlefMltJOfD01iBS1dzosZk6fz/y5K4qMS1JSba8prZkzgHnrYpWqQX19+Ybur8cDPWxxqKORBD/LYv6F/FFBU298aKz/GFil19Q4LtD8GwJxfj/jQvPkcUQOafrRQbZXRXsvR9h4sM/f5ZAwR51uKVMs/4gt/HLBNNRMVrenUiR6lmHkR+D4DnygtAgaEFTE6Zahj2S8YupHgrVMMz2dUlePZ4CByeanIFUvSCmZwsubwMwoJm03kZOGM5k09b/96YhJwUtU1BtzjhXL+JODg7Diu3MTrZOPAZYZBvcc9134sp77d jenkins@591fe973fd4bjenkins@591fe973fd4b:~/.ssh$

由于之前运行Gitlab容器的时候,指定了222端口为容器内22的映射端口,那么这里地方还要在.ssh目录下增加一个config的配置文件!这个很坑啊,很容易忘记,导致后面的ssh拉取代码的时候一直报permission denied的错误!!!,这个坑搞了我两天,上班时的心情都不好了!对了,这里还要给这个 .ssh 的文件777的权限(这里如果22端口没改则跳过这一步)

# 在 .ssh目录下新增config文件[root@iZwz9eq1jai7e87n6vw5liZ .ssh]# vim config

# config文件中编辑的内容Host 112.74.167.52 # gitlab服务器地址User root # gitlab登入账号port 222 # ssh的端口,之前做了映射的IdentityFile /var/jenkins_home/.ssh/id_rsa # 私钥所在目录

将id_rsa.pub(公钥)内容复制到Gitlab的 ssh keys 中

将id_rsa(私钥)内容复制到 Jenkins的ssh凭据里面

使用ssh的方式从Gitlab拉取代码

再创建一个项目test02使用ssh的方式来构建项目

查看构建信息:构建成功!

6、Jenkins配置JDK以及maven的环境

因为后续需要将拉取的代码进行打包操作,所以这里必须要先配置maven以及JDK的环境

查看Jenkins中现有的环境

[root@iZwz9eq1jai7e87n6vw5liZ /]# docker inspect myjenkins

Jenkins页面添加如下配置

再在系统配置添加如下变量

环境配置完毕

7、使用maven构建拉取的代码,生成jar/war包

至此,Gitlab以及Jenkins的搭建都已经说清楚了,还包括 jenkins从gitlab拉取代码的两种方式,那么接下来就再讲讲使用 Jenkins 对拉取的代码进行maven打包的把!这个也很简单

以 test01为例,点击配置

编写maven打包指令

执行立即构建将项目打包

查看打包结果:构建成功

那么接下来我们来看一下生成的springboot 的jar包

至此,使用Jenkins 对项目进行maven打包也已经完成!

截图截得我想吐啊,大家给个收藏关注吧!谢谢了。革命尚未成功,我们还需努力

Docker安装Tomcat

只要前面都是按照我的做的,应该都能安装成功,并且到这一步

Tomcat的安装

# 搜索tomcat镜像[root@iZwz9eq1jai7e87n6vw5liZ /]# docker search tomcat --filter=STARS=50NAMEDESCRIPTION STARStomcat Apache Tomcat is an open source implementati… 2751tomeeApache TomEE is an all-Apache Java EE certif… 79 dordoka/tomcatUbuntu 14.04, Oracle JDK 8 and Tomcat 8 base… 54 # 这里我们直接pull最新版的tomcat[root@iZwz9eq1jai7e87n6vw5liZ /]# docker pull tomcatUsing default tag: lateste9afc4f90ab0: Pull completeDigest: sha256:81c2a95e5b1b5867229d75255abe54928d505deb81c8ff8949b61fde1a5d30a1Status: Downloaded newer image for tomcat:latestdocker.io/library/tomcat:latest# 查看现有镜像[root@iZwz9eq1jai7e87n6vw5liZ /]# docker imagesREPOSITORYTAG IMAGE ID CREATED SIZEmyjenkins latest 02556376487f 4 hours ago 667MBtomcat latest 2eb5a120304e 3 days ago647MBjenkins/jenkinslts 5d1103b93f92 2 weeks ago 656MB[root@iZwz9eq1jai7e87n6vw5liZ /]# Tomcat镜像已经安装完毕

Tomcat的运行

# 运行tomcat[root@iZwz9eq1jai7e87n6vw5liZ mytomcat]# docker run -d -p 8080:8080 --name tomcat -v mytomcat:/usr/local/tomcat tomcat9aa3d185990213381e6aa1cf03684af32ab9a8ff3f5bd602161bf440e85f# 查看当前运行的容器[root@iZwz9eq1jai7e87n6vw5liZ mytomcat]# docker psCONTAINER ID IMAGECOMMAND CREATED STATUS PORTSNAMES9aa3d185 tomcat "catalina.sh run" 48 seconds agoUp 47 seconds 0.0.0.0:8080->8080/tcp tomcat591fe973fd4b myjenkins "/sbin/tini -- /usr/…" 4 hours ago Up 4 hours0.0.0.0:50000->50000/tcp, 0.0.0.0:8088->8080/tcp myjenkins[root@iZwz9eq1jai7e87n6vw5liZ mytomcat]# tomcat容器启动成功

接下来就直接访问tomcat的页面吧! http://IP:8080

发现404,这是为什么呢?这是因为docker容器只保留了容器的最小功能,其他的配置能省就省,不信的话,我们可以切换到tomcat的webapps的目录下来一探究竟!!!

那要怎么样才能访问到tomcat的首页呢?其实很简单,我们发现tomcat的目录下面有一个webapps.dist的文件,我们只要把这个文件下的所有内容都复制到webapps的目录下面,即可访问到tomcat的经典首页!

# 复制命令[root@iZwz9eq1jai7e87n6vw5liZ _data]# cp -r webapps.dist/* webapps/[root@iZwz9eq1jai7e87n6vw5liZ _data]# cd webapps[root@iZwz9eq1jai7e87n6vw5liZ webapps]# lsdocs examples host-manager manager ROOT[root@iZwz9eq1jai7e87n6vw5liZ webapps]#

接下来我们再次访问 http://IP:8080,完美运行

Tmcat修改配置

修改 tomcat-user.xml 文件(_data/config/目录下)

# 我们为tomcat添加一个用户和角色<tomcat-users><role rolename="tomcat" /><role rolename="role1" /><role rolename="manager-script" /><role rolename="manager-gui" /><role rolename="manager-status" /><role rolename="admin-gui" /><role rolename="admin-script" /><user username="tomcat" password="123456" roles="manager-gui,manager- script,tomcat,admin-gui,admin-script" /></tomcat-users>

修改context.xml文件(_data/webapps/manager/META-INF/目录下)

#注释掉如下内容<value className="org.apache.catalina.values.RemoteAddrValue"allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

OK配置完毕,接下来我们再次访问页面,点击 manager webapp 输入刚才设置的登入账号和密码 tomcat/123456登入查看

登入后页面:

至此,Tomcat的服务器也搭建完毕了。更新先停一段落,后续将会继续更新

Jenkins自动化项目部署的操作!!!只需要开发人员提交代码到版本库,那么Jenkins就自动将最新代码打包直接发布到Tomcat服务器,是不是很方便!也希望大家多多支持。头一次写这么详细,希望大家好好练习。

只要学不死,就往死里学!!!

如果觉得《使用Docker安装Gitlab Jenkins Tomcat搭建流水线项目环境 实现DevOps自动化步骤 很详细》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。