参考文章:[Docker 技术入门与实战]
Tomcat
Tomcat 是由 Apache 软件基金会下属的 Jakarta 项目开发的一个 Servlet
容器,按照 Sun Microsystems 提供的技术规范,实现了对 Servlet
和 JavaServer Page
(JSP)的支持。同时,它提供了作为 Web 服务器的一些特有功能,如 Tomcat 管理和控制平台,安全域管理和 Tomcat 域等。由于 Tomcat 本身也内含了一个 HTTP 服务器,也可以当做单独的 Web 服务器来使用。
准备工作
创建 tomcat_9.0_jdk
文件夹,从 www.oracle.com
网站上下载 jdk11
压缩包,解压为 jdk 目录。
- 创建
Dockerfile
和run.sh
文件:
1 | mkdir tomcat_9.0_jdk11 |
- 下载
Tomcat
,也可以到官方下载最新的版本
1 | wget https://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.41/bin/apache-tomcat-9.0.41.zip |
- 解压后,
tomcat_9.0_jdk11
的目录结构应该如下所示:
1 | # ls |
Dockerfile 文件和其他脚本文件
- Dockerfile 文件内容如下:
1 | # 继承继承 |
- 创建 Tomcat 用户和密码的脚本文件
create_tomcat_admin_user.sh
1 |
|
- 编写
run.sh
脚本文件,内容为:
1 | Dockerfile apache-tomcat-9.0.41 create_tomcat_admin_user.sh jdk run.sh |
- 创建和测试镜像
通过下面的命令创建镜像 tomcat_9.0:jdk11
1 | docker build -t tomcat9.0:jdk11 . |
- 启动一个
Tomcat
容器进行测试
1 | docker run -d -p 8080:8080 tomcat9.0:jdk11 |
- 通过 docker logs 得到 Tomcat 的密码
1 | => Creating an admin user with a random password in Tomcat |
- 查看映射的端口信息
1 | $ docker port affectionate_galois |
- 可以使用本地浏览器访问 Tomcat 管理页面,这边 Docker 宿主机的IP地址为
120.48.5.173
,所以可以访问http://120.48.5.173:8080
,可以看到启动页面如下:
注意,在实际环境中,可以通过使用 -v 参数来挂载 Tomcat 的日志文件,程序所在目录,以及 Tomcat 相关的配置;
Tomcat 相关资源
Tomcat 的相关资源如下:
- Tomcat 官网:
http://tomcat.apache.org/
- Tomcat 官方仓库:
https://github.com/apache/tomcat/
- Tomcat 官方镜像:
https://hub.docker.com/_/tomcat/
- Tomcat 官方镜像仓库:
https://github.com/docker-library/tomcat