`

dockerfile搭建tomcat服务

 
阅读更多

文章是参考网上一个哥们分享的搭建,以及自己的补充而来。 

      Dockerfile应用场景

      Dockerfile通过脚本批量运行命令集,一定程度解放了手工一条条输入命令运行程序,编写好Dockerfile脚本文件后,通过docker build(docker build [选项] 路径)命令来创建镜像,然后让docker读取并分析、执行,那么重复构建、更新将变得很方便,便于团队分享、维护脚本文件。

      Dockerfile组成

      Dockerfile是由一行行命令组成,Dockfile常见命令参考本人整理客:http://zhongmin2012.iteye.com/blog/2345422

首先建一个目录构建我们的环境。

mkdir root/software

上传tomcat和jdk到该目录下。

[root@wls12c web]$ ls
apache-tomcat-7.0.73.tar.gz  jdk-7u79-linux-x64.tar.gz 

编辑Dockerfile

vi Dockerfile

#pull down centos image,可以通过 docker images 查询自己的就像
FROM daocloud.io/library/centos    
MAINTAINER lee@lee.com
#copy jdk and tomcat into image   如果文件是可识别的压缩格式,则docker会帮忙解压缩
ADD ./apache-tomcat-7.0.73.tar.gz /root
ADD ./jdk-7u79-linux-x64.tar.gz /root
#set environment variable
ENV JAVA_HOME /root/jdk1.7.0_79
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.73/bin/startup.sh && tail -F /root/apache-tomcat-7.0.73/logs/catalina.out

构建镜像

[root@wls12c web]$ docker build -t lee/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 lee/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访问了。

 

分享到:
评论

相关推荐

    Docker-利用dockerfile来搭建tomcat服务的方法

    主要介绍了Docker-利用dockerfile来搭建tomcat服务的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Docker学习之基于Dockerfile搭建JAVA Tomcat运行环境的方法

    本篇文章主要介绍了Docker学习之基于Dockerfile搭建JAVA Tomcat运行环境的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

    eacdy#spring-cloud-book#3.6 使用Dockerfile构建Docker镜像1

    参考文档基于Dockerfile搭建JAVA Tomcat运行环境:

    Tomcat_8.5.43_Dockerfile.zip

    基于Centos环境和JDK1.8环境,搭建的Tomcat8.5.43 Dockerfile文件

    极空间docker搭建centos

    这将创建一个名为 `mycentos` 的镜像文件,基于当前目录下的 Dockerfile。 接下来,我们需要配置基本设置和端口以满足我们的需求。例如,我们可以使用以下命令设置环境变量: ``` ENV HOME=/home ``` 这将设置环境...

    配置好的tomcat+nginx

    6. **脚本或自动化工具**:可能是用于启动、停止或监控Tomcat和Nginx的bash脚本或Dockerfile。 配置Tomcat和Nginx的过程通常包括以下步骤: 1. **安装Nginx和Tomcat**:确保在系统上正确安装了这两个软件,并且...

    详解Docker学习笔记之搭建一个JAVA Tomcat运行环境

    本篇文章主要介绍了详解Docker学习笔记之搭建一个JAVA Tomcat运行环境,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    详解docker中Dockerfile指令创建镜像

    继续docker的学习,昨天用docker成功跑了tomcat,但是在centos中镜像跑的容器手动装jdk和tomcat,今天学习用Dockerfile创建镜像,并在上面搭建java环境,跑一个spring boot小项目。 Dockerfile: Dockerfile由一行...

    Docker中Dockerfile之容器中运行MyEclipse搭建的JavaWeb项目

    这篇文章将讲述如何将上一篇文章中的Javaweb项目制作成Docker的镜像。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 应用程序在Docker容器中运行和在物理机... 启动Tomcat服务 步骤已经

    microservice-starter-tomcat:基于Tomcat的Microservice Starter项目

    这个项目旨在帮助开发者快速搭建基于Tomcat的微服务,减少初始设置和配置的工作量,从而让开发者更专注于业务逻辑的实现。 该项目的核心功能可能包括以下方面: 1. **自动配置**:项目可能提供了一套自动配置机制...

    毕设项目:基于SpringBoot+Layui搭建的学生管理系统.zip

    Spring Boot包含了许多内置特性,如内嵌Tomcat服务器、自动配置、健康检查、Actuator监控等,这些都为开发高效且稳定的Web应用提供了便利。 【压缩包子文件的文件名称列表】:未给出具体的文件名称列表,但通常一个...

    springboot搭建博客系统.zip

    1. **SpringBoot基础**:SpringBoot是Spring框架的扩展,它内置了Tomcat服务器,自动配置了Spring组件,简化了Maven依赖管理。通过`@SpringBootApplication`注解,我们可以快速启动一个SpringBoot应用。 2. **Web...

    详解Docker下搭建Jenkins构建环境

    搭建Jenkins构建环境需要安装jdk、maven、tomcat、jenkins,另外还安装了GIT,用来构建GIT来源的代码,内容如下: FROM centos:7 # author info MAINTAINER xulijian 514045152@qq.com # install wget to download ...

    springboot + react 搭建的博客系统,coding.....(有 bug,不建议本地运行) 暂时停更.zip

    本项目是一个基于SpringBoot后端框架和React前端框架搭建的博客系统,旨在帮助学习者深入理解和实践软件开发的各个环节。由于存在bug,不推荐在本地直接运行,但可以通过阅读源码来学习相关技术。 首先,SpringBoot...

    本项目是基于微服务架构的班车预约系统,采用两个版本第一个版本:springboot

    6. **Dockerfile**或Kubernetes配置:可能包含用于容器化部署的文件,帮助在不同环境中快速部署和扩展服务。 通过对这些源码的深入学习和分析,开发者不仅可以理解微服务架构的实现细节,还可以了解到如何在实际...

    毕业设计: Java项目springboot老年一站式服务平台(源码 + 数据库)

    【标签】中提到了“spring boot”,这是Java领域非常流行的微服务开发框架,它内置了Tomcat服务器,简化了配置,提供了自动配置功能,使得开发者能够快速搭建应用。另外,“java”指明了编程语言,而“软件/插件”则...

    基于Vue+SpringBoot+WebSocket实现Web端聊天系统源码

    Spring Boot是Java领域的热门微服务框架,它简化了Spring应用的初始搭建以及配置过程,提供了多种内置功能,如嵌入式Tomcat服务器、自动配置、健康检查等。在这个项目中,Spring Boot作为后端服务器,负责处理用户的...

    基于springboot的校园外卖服务系统源码数据库.zip

    10. **部署与运行**:项目可能包含Dockerfile,便于使用Docker容器化部署,也可以通过传统的Tomcat服务器部署。 11. **RESTful API**:设计符合REST原则的API,能够实现前后端分离,提高系统的可扩展性和灵活性。 ...

    weatherstations.zip

    SpringBoot通过内嵌Servlet容器(如Tomcat或Jetty),默认配置了大量的功能,使得开发者可以“开箱即用”。它还支持自动配置,可以快速构建独立运行的、生产级别的Java应用。 将Netty与SpringBoot整合,可以利用...

    Java项目之springboot大学生就业服务平台(源码)

    Spring Boot作为Java生态中的一个热门微服务开发框架,它简化了传统Spring应用的初始搭建以及配置工作,使得开发者能够更专注于业务逻辑的实现。 【描述】提到的是一个具体的Java项目,使用Spring Boot技术,目标是...

Global site tag (gtag.js) - Google Analytics