使用容器部署Jenkins

本文详细介绍了如何在Docker环境下部署Jenkins,包括Tomcat目录结构、编写Dockerfile、配置脚本、创建测试页面、生成镜像、运行容器、部署Jenkins并进行管理员设置,最后将镜像推送到Docker Hub仓库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Tomcat部署目录结构

[root@master ~]# tree tomcat/
tomcat/
|-- Dockerfile
`-- files
    |-- apache-tomcat-9.0.54.tar.gz
    |-- index.jsp
    |-- install.sh
    |-- jenkins-2.303.2.war
    `-- jenkins-2.319.1.war

1 directory, 6 files

二、编写Dokcerfile文件

[root@master ~]# cat tomcat/Dockerfile 
FROM centos

LABEL MAINTAINER "gaofan1225 123qq.com"

ENV version 9.0.54 
ENV jenkins_vsn 2.319.1
ENV PATH $PATH:/usr/local/tomcat/bin

ADD files/apache-tomcat-${version}.tar.gz /usr/local/

COPY files/jenkins-${jenkins_vsn}.war /usr/local/
COPY files/index.jsp /usr/local/
COPY files/install.sh /tmp/

RUN /tmp/install.sh

EXPOSE 8080

WORKDIR /usr/local/tomcat/bin

CMD ["/usr/local/tomcat/bin/catalina.sh","run"]

三、编写脚本配置文件

[root@master ~]# cat tomcat/files/install.sh 
#!/bin/bash

rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-$(awk -F'"' 'NR==5{print $2}'  /etc/os-release).repo 
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo 
yum -y install java-1.8.0-openjdk 
ln -s /usr/local/apache-tomcat-${version}/ /usr/local/tomcat
cd /usr/local/
mkdir /usr/local/tomcat/webapps/test
cp index.jsp /usr/local/tomcat/webapps/test/

四、编写测试页面文件

[root@master ~]# cat tomcat/files/index.jsp 
<html>
<head>
         <title>test page</title>
</head>
<body>
         <%
           out.println("Hello amu");
         %>
</body>
</html>

五、生成镜像

[root@master ~]# docker build -t gaofan1225/tomcat:v1 tomcat/
......以上安装步骤省略
Successfully built b58f66854483
Successfully tagged gaofan1225/tomcat:v1

六、运行一个Tomcat容器

// 做端口映射8080
[root@master ~]# docker run -itd --name tomcat -p 8080:8080 gaofan1225/tomcat:v1
799fb773d080331fe56ca6225ae6d7c6d03866e4d68a544d7715691ebe0e98c5

页面访问
在这里插入图片描述
测试页面访问
在这里插入图片描述

七、部署Jenkins

// 交互模式登录tomcat容器
[root@master ~]# docker exec -it tomcat /bin/bash

[root@799fb773d080 bin]# cd ../webapps/ROOT/
[root@799fb773d080 ROOT]# ls
RELEASE-NOTES.txt  bg-button.png  bg-upper.png  tomcat.css
WEB-INF            bg-middle.png  favicon.ico   tomcat.svg
asf-logo-wide.svg  bg-nav.png     index.jsp

[root@799fb773d080 ROOT]# rm -rf RELEASE-NOTES.txt asf-logo-wide.svg bg-middle.png  bg-upper.png  index.jsp tomcat.css  tomcat.png

// 复制jenkins包当当前目录下
[root@799fb773d080 ROOT]# cp /usr/local/jenkins-2.319.1.war  .
[root@799fb773d080 ROOT]# ls
WEB-INF        bg-nav.png   jenkins-2.319.1.war
bg-button.png  favicon.ico  tomcat.svg

// 下载解压软件unzip
[root@799fb773d080 ROOT]# yum -y install unzip

// 解压jenkins包
[root@799fb773d080 ROOT]# unzip jenkins-2.319.1.war

[root@799fb773d080 ROOT]# ls
 ColorFormatter.class             css
 JNLPMain.class                   executable
'LogFileOutputStream$1.class'     favicon.ico
 LogFileOutputStream.class        help
 META-INF                         images
'Main$FileAndDescription.class'   jenkins-2.319.1.war
 Main.class                       jsbundles
 MainDialog.class                 robots.txt
 WEB-INF                          scripts
 bg-button.png                    tomcat.svg
 bg-nav.png                       winstone.jar
 bootstrap

// 重启tomcat容器
[root@master ~]# docker restart tomcat
tomcat

页面访问
在这里插入图片描述

密码获取

[root@799fb773d080 local]# cat /root/.jenkins/secrets/initialAdminPassword
5cc3b7117fce4298962684f2f7e9115d

安装默认插件
在这里插入图片描述

等待插件安装
在这里插入图片描述

创建第一个管理员用户
在这里插入图片描述
绑定IP
在这里插入图片描述
安装完成
在这里插入图片描述

在这里插入图片描述

八、把镜像放到Docker Hub仓库

// 登录docker hub仓库
[root@master ~]# docker login
Login Succeeded


// 上传tomcat镜像到docker hub仓库
[root@master ~]# docker push gaofan1225/tomcat:v1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值