- 一、Tomcat部署目录结构
- 二、编写Dokcerfile文件
- 三、编写脚本配置文件
- 四、编写测试页面文件
- 五、生成镜像
- 六、运行一个Tomcat容器
- 七、部署Jenkins
- 八、把镜像放到Docker Hub仓库
[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
test page
<%
out.println("Hello amu");
%>
五、生成镜像
[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
页面访问
测试页面访问
// 交互模式登录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仓库 [root@master ~]# docker login Login Succeeded // 上传tomcat镜像到docker hub仓库 [root@master ~]# docker push gaofan1225/tomcat:v1



