Docker-利用dockerfile来搭建tomcat服务的方法
发布时间 - 2026-01-10 22:28:35 点击率:次在前面的例子中,我们从下载镜像,启动容器,在容器中输入命令来运行程序,这些命令都是手工一条条往里输入的,无法重复利用,而且效率很低。所以就需要一 种文件或脚本,我们把想执行的操作以命令的方式写入其中,然后让docker读取并分析、执行,那么重复构建、更新将变得很方便,所以Dockerfile就此诞生了。

常用参数:
FROM命令。用法,FROM <image>:<tag>。FROM命令告诉docker我们构建的镜像是以哪个(发行版)镜像为基础的
RUN命令。用法RUN <command>。RUN 后面接要执行的命令,比如,我们想在镜像中安装vim,只需在Dockfile中写入RUN yum install -y vim
ENV命令。用法,ENV <key> <value>。ENV命令主要用于设置容器运行时的环境变量
ADD命令。用法,ADD <src> <dest>。ADD主要用于将宿主机中的文件添加到镜像中
首先建一个目录构建我们的环境。
mkdir test/web
上传tomcat和jdk到该目录下。
[root@wls12c web]$ ls apache-tomcat-7.0.70.tar.gz jdk-7u80-linux-x64.tar.gz
编辑Dockerfile
vim Dockerfile #pull down centos image FROM centos MAINTAINER test@test.com #copy jdk and tomcat into image ADD ./apache-tomcat-7.0.70.tar.gz /root ADD ./jdk-7u80-linux-x64.tar.gz /root #set environment variable ENV JAVA_HOME /root/jdk1.7.0_80 ENV PATH $JAVA_HOME/bin:$PATH #define entry point which will be run first when the container starts up ENTRYPOINT /root/apache-tomcat-7.0.70/bin/startup.sh && tail -F /root/apache-tomcat-7.0.70/logs/catalina.out
构建镜像
[root@wls12c web]$ docker build -t keven/centos:tomcat-centos --rm=true . Sending build context to Docker daemon 470.4 MB Sending build context to Docker daemon Step 0 : FROM centos ---> d83a55af4e75 Step 1 : MAINTAINER test@test.com ---> Running in 955747d64da5 ---> 1619dc8f6d58 ................ 70/logs/catalina.out ---> Running in fe48acf12d70 ---> 52076383f11b Removing intermediate container fe48acf12d70 Successfully built 52076383f11b
-t选择指定生成镜像的用户名,仓库名和tag
--rm=true指定在生成镜像过程中删除中间产生的临时容器。
查看新产生的镜像
[root@wls12c web]$ docker images keven/centos REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE keven/centos tomcat-centos 52076383f11b 19 minutes ago 516.6 MB
运行镜像
[root@wls12c web]$ docker run -d -p 8090:8080 5207 8260fa22aa32126f613a6b64f121e78545ceae01da58c61396968bfafeda3706
-p指定主机80端口与容器8080端口进行绑定
-d 指定容器运行后与当前tty分离,后台运行
5207是镜像的ID前4位。
通过 http://宿主机IP:8090,即可看见我们熟悉的tomcat首页了。
另外还有一种自动映射主机端口的启动方法
[root@wls12c web]$ docker run -d -p 8080 --name myweb 520 de39869a8c560e5e0cf48fc6022c05ed9f9a145bdafb897767fa468dc24ebfff [root@wls12c web]$ docker port de3 8080/tcp -> 0.0.0.0:32768 [root@wls12c web]$
这样就要通过http://宿主机IP:32768访问了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# dockerfile
# tomcat
# docker搭建tomcat
# dockerfile构建tomcat
# 如何基于Dockerfile构建tomcat镜像
# 基于alpine用dockerfile创建的tomcat镜像的实现
# Dockerfile制作官方Tomcat镜像及镜像使用详解
# Docker学习之基于Dockerfile搭建JAVA Tomcat运行环境的方法
# docker在已有的tomcat镜像上打新的镜像的Dockerfile编写说明介绍
# Docker容器上用DockerFile部署多个tomcat服务的步骤
# 镜像
# 主要用于
# 都是
# 只需
# 在前面
# 很低
# 首页
# 很方便
# 绑定
# 往里
# 大家多多
# 到该
# 过程中
# 机中
# 上传
# 发行版
# 目录下
# 诞生了
# wls12c
# ls
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
node.js报错:Cannot find module 'ejs'的解决办法
ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集
黑客如何通过漏洞一步步攻陷网站服务器?
极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
佛山企业网站制作公司有哪些,沟通100网上服务官网?
清除minerd进程的简单方法
如何确保西部建站助手FTP传输的安全性?
为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】
公司网站制作价格怎么算,公司办个官网需要多少钱?
Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中
头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?
如何挑选高效建站主机与优质域名?
在Oracle关闭情况下如何修改spfile的参数
Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置
Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
制作旅游网站html,怎样注册旅游网站?
Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】
如何快速使用云服务器搭建个人网站?
Laravel如何集成Inertia.js与Vue/React?(安装配置)
java ZXing生成二维码及条码实例分享
Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧
如何在云指建站中生成FTP站点?
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
Laravel Docker环境搭建教程_Laravel Sail使用指南
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
如何基于云服务器快速搭建网站及云盘系统?
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
利用vue写todolist单页应用
MySQL查询结果复制到新表的方法(更新、插入)
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
详解阿里云nginx服务器多站点的配置
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
公司网站制作需要多少钱,找人做公司网站需要多少钱?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
网站制作软件免费下载安装,有哪些免费下载的软件网站?
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】
专业商城网站制作公司有哪些,pi商城官网是哪个?
Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】
作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】
html如何与html链接_实现多个HTML页面互相链接【互相】
Python制作简易注册登录系统
Python正则表达式进阶教程_复杂匹配与分组替换解析
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
进行网站优化必须要坚持的四大原则
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?

