docker linux centos 安装 tomcat

本文介绍如何使用Docker在CentOS系统上部署带有SSH、Java环境及Tomcat的应用镜像,并实现容器化自动启动。

37.4 创建docker centos-ssh-root-java-tomcat 

 

37.4.0 前提 拥有一个 centos-ssh-root-java

 

 

37.4.1 编辑 dockerfile

 

############################################
# version:apache-tomcat-7.0.75
# desc : 当前版本安装的7.0.75
############################################

# 设置继承自我们创建的 tools 镜像
FROM curiousby/centos-ssh-root-java:original

# 下面是一些创建者的基本信息
MAINTAINER baoyou curiousby@163.com

# 复制 apache-tomcat-7.0.75.tar.gz 文件到镜像中
ADD apache-tomcat-7.0.75.tar.gz /usr/local/

# 设置软连接
RUN ln -s /usr/local/apache-tomcat-7.0.75 /usr/local/tomcat


# 设置 tomcat 的环境变量,若读者有其他的环境变量需要设置
ENV CATALINA_HOME /usr/local/apache-tomcat-7.0.75


# 容器需要开放Tomcat 8080端口
EXPOSE 8080

COPY autorun.sh /usr/local/tomcat/bin/autorun.sh

RUN chmod u+x /usr/local/tomcat/bin/autorun.sh

# 自启动
CMD ["/usr/local/tomcat/bin/autorun.sh"]

 

 

 

37.4.2 编辑自动启动脚本

 

#!/bin/bash
source ~/.bashrc

sh /usr/local/tomcat/bin/catalina.sh run

 

 

37.4.3 执行命令

 

cd centos-ssh-root-java
cp ../apache-tomcat-7.0.75.tar.gz .
vim  Dockerfile 
tar -xf apache-tomcat-7.0.75.tar.gz
vim apache-tomcat-7.0.75.tar.gz/bin/catalina.sh
添加代码
	export JAVA_HOME=/usr/local/jdk1.7.0_79  
	export JRE_HOME=/usr/local/jdk1.7.0_79/jre  
	export CATALINA_HOME=/usr/local/apache-tomcat-7.0.75  
	export CATALINA_BASE=/usr/local/apache-tomcat-7.0.75  
	export CATALINA_TMPDIR=/usr/local/apache-tomcat-7.0.75/temp

cp apache-tomcat-7.0.75.tar.gz/bin/catalina.sh .

vim  autorun.sh

#!/bin/bash
source ~/.bashrc

sh /usr/local/tomcat/bin/catalina.sh run

docker build -t "curiousby/centos-ssh-root-java-tomcat:original" .


docker run -d -p 8080:8080 curiousby/centos-ssh-root-java-tomcat:original  -v /docker/tomcat1/logs/:/usr/local/tomcat/logs 
docker run -d -p 8081:8080 curiousby/centos-ssh-root-java-tomcat:original -v /docker/tomcat1/logs/:/usr/local/tomcat/logs 
docker run -d -p 8082:8080 curiousby/centos-ssh-root-java-tomcat:original -v /docker/tomcat1/logs/:/usr/local/tomcat/logs 

 

 

37.4.4 运行 build  日志



 

#build 运行日志 
[root@localhost centos-ssh-root-java-tomcat]# docker build -t curiousby/centos-ssh-root-java-tomcat:original .
Sending build context to Docker daemon  8.967MB
Step 1/9 : FROM curiousby/centos-ssh-root-java:original
 ---> b927a708d880
Step 2/9 : MAINTAINER baoyou curiousby@163.com
 ---> Running in c714e382a89f
 ---> 8843e826df75
Removing intermediate container c714e382a89f
Step 3/9 : ADD apache-tomcat-7.0.75.tar.gz /usr/local/
 ---> d658ff1a2ba5
Removing intermediate container efb719168d48
Step 4/9 : RUN ln -s /usr/local/apache-tomcat-7.0.75 /usr/local/tomcat
 ---> Running in 799eb96d5d2a
 ---> 96623ac69cbd
Removing intermediate container 799eb96d5d2a
Step 5/9 : ENV CATALINA_HOME /usr/local/apache-tomcat-7.0.75
 ---> Running in c59375c73a1d
 ---> b707eae87825
Removing intermediate container c59375c73a1d
Step 6/9 : EXPOSE 8080
 ---> Running in 482ebe032044
 ---> e52bb95bb46e
Removing intermediate container 482ebe032044
Step 7/9 : COPY autorun.sh /usr/local/tomcat/bin/autorun.sh
 ---> 3cfd1c86bccf
Removing intermediate container c1aa90cb1121
Step 8/9 : RUN chmod u+x /usr/local/tomcat/bin/autorun.sh
 ---> Running in 4b3ccdeb4f53
 ---> 54988bebb05c
Removing intermediate container 4b3ccdeb4f53
Step 9/9 : CMD /usr/local/tomcat/bin/autorun.sh
 ---> Running in c1235f2f90e2
 ---> 7dd208c74262
Removing intermediate container c1235f2f90e2
Successfully built 7dd208c74262
Successfully tagged curiousby/centos-ssh-root-java-tomcat:original
[root@localhost centos-ssh-root-java-tomcat]# 

 

37.4.5 运行 run 结果



 

docker run -d -p 8080:8080 curiousby/centos-ssh-root-java-tomcat:original 
docker run -d -p 8081:8080 curiousby/centos-ssh-root-java-tomcat:original 
docker run -d -p 8082:8080 curiousby/centos-ssh-root-java-tomcat:original 

 

docker run -d -p 8080:8080 curiousby/centos-ssh-root-java-tomcat:original  -v /docker/tomcat1/logs/:/usr/local/tomcat/logs 
docker run -d -p 8081:8080 curiousby/centos-ssh-root-java-tomcat:original -v /docker/tomcat1/logs/:/usr/local/tomcat/logs 
docker run -d -p 8082:8080 curiousby/centos-ssh-root-java-tomcat:original -v /docker/tomcat1/logs/:/usr/local/tomcat/logs 

  

37.4.6运行 run web 页面



 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者 

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(支持支付宝和微信 以及扣扣群),没钱捧个人场,谢谢各位。

 

个人主页http://knight-black-bob.iteye.com/



 
 
 谢谢您的赞助,我会做的更好!

 

 

### 安装 Docker 为了在 CentOS 7 上使用 Docker 部署 Tomcat 应用程序,首先需要确保 Docker 已经正确安装。可以通过以下命令来添加 Docker 的官方 YUM 仓库并安装 Docker: ```bash sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce docker-ce-cli containerd.io ``` 启动 Docker 并设置开机自启[^3]。 ### 启动 Docker 服务 完成安装之后,需启动 Docker 服务,并将其设为随系统启动自动开启: ```bash sudo systemctl start docker sudo systemctl enable docker ``` ### 下载 Tomcat 镜像 下载所需的 Tomcat 版本镜像到本地机器上。可以不指定标签以获取最新版本,也可以通过冒号加版本号的方式指明特定版本: ```bash docker pull tomcat:latest # 或者指定版本 docker pull tomcat:9.0 ``` 确认镜像已成功下载可执行 `docker images` 命令查看当前主机上的所有镜像列表[^2]。 ### 创建并运行容器 创建一个新的基于所选 Tomcat 镜像的容器实例,在此过程中映射端口使得可以从宿主机访问该 Web 服务器提供的服务;同时还可以选择性地挂载卷用于持久化存储 webapps 文件夹中的数据: ```bash docker run -d \ -p 8080:8080 \ -v /path/to/host/webapps:/usr/local/tomcat/webapps \ --name my-tomcat-container \ tomcat:9.0 ``` 这里 `-v` 参数用来定义一个绑定挂载点,将宿主机路径 `/path/to/host/webapps` 映射至容器内的 `/usr/local/tomcat/webapps` 路径下[^5]。 ### 修改 WebApps 内容 进入之前创建好的文件夹位置(即上面命令中提到的 `/path/to/host/webapps`),在此处放置想要部署的应用程序 WAR 包或是直接编辑 HTML 页面等内容。例如,如果希望简单测试,则可以在 ROOT 目录下新建一个名为 `index.html` 的文件[^1]。 ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Test Page</title> </head> <body> <h1>Hello from Tomcat on Docker!</h1> </body> </html> ``` 保存更改后刷新浏览器页面即可看到更新后的效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值