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

在前面的例子中,我们从下载镜像,启动容器,在容器中输入命令来运行程序,这些命令都是手工一条条往里输入的,无法重复利用,而且效率很低。所以就需要一 种文件或脚本,我们把想执行的操作以命令的方式写入其中,然后让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访问了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

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

    前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装.部署和升级,非常方便.因为使用了容器,所以可以很方便的把生产环境和开发环境分开,互不影响,这是 docker 最普遍的一个玩法.更多的玩法还有大规模 web 应用.数据库部署.持续部署.集群.测试环境.面向服务的云计算.虚拟桌面 VDI 等等. 主观的印象:Docker 使用 Go 语言编写,用 cgroup 实现

  • 用apache和tomcat搭建集群(负载均衡)

    一.集群和负载均衡的概念 (一)集群的概念 集群(Cluster)是由两台或多台节点机(服务器)构成的一种松散耦合的计算节点集合,为用户提供网络服务或应用程序(包括数据库.Web服务和文件服务等)的单一客户视图,同时提供接近容错机的故障恢复能力.集群系统一般通过两台或多台节点服务器系统通过相应的硬件及软件互连,每个群集节点都是运行其自己进程的独立服务器.这些进程可以彼此通信,对网络客户机来说就像是形成了一个单一系统,协同起来向用户提供应用程序.系统资源和数据.除了作为单一系统提供服务,集群系统还

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

    前言 在第一篇文字中,我们完全人工方式,一个命令一个命令输入,实现一个java tomcat运行环境,虽然也初见成效,但很累人.如果依靠依靠脚本构建一个Tomcat容器实例,一个命令可以搞定,何乐而不为呢.好在Docker提供了Dockerfile作为构建Docker镜像脚本,避免人们一行一行的输入,真是善莫大焉.Dockerfile脚本可以做到随时维护修改,即可以分享,更有利于在模板化,更不用说传输了,好处那是一大箩筐! 最终目的:打造一个支持SSH终端登录.Tomcat7自动运行的Docke

  • Docker 搭建 Tomcat 运行环境的方法

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口. 1 Docker与虚拟机   2 搭建过程 2.1 准备宿主系统 准备一个 CentOS 7操作系统,具体要求如下: 必须是 64 位操作系统 建议内核在 3.8 以上 通过以下命令查看您的 CentOS 内核: # uname -r 2.2 安装Docker # yum install d

  • 搭建Tomcat 8源码开发环境的步骤详解

    前言 最近在网上搜索了很多关于tomcat源码环境搭建的文章,发现按照文章的步骤,几乎都启动不了,于是自己尝试搭建,下面是搭建的方法. 基础环境搭建 1.下载tomcat源代码,我这里是通过svn的方式下载的,svn下载地址 2.下载安装maven工具,这里我就不多说了,安装说明太多了,自己网上找. 3.IDE,我这里使用idea 生成maven工程 我的代码本地目录是: /Users/helanzhou/Documents/helanzhou/java/Tomcat/tomcat8/tomca

  • Debian下搭建Nginx和Tomcat服务器实现负载均衡的方案

    负载均衡的基本概念 负载平衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群).网络连接.CPU.磁盘驱动器或其他资源中分配负载,以达到最佳化资源使用.最大化吞吐率.最小化响应时间.同时避免过载的目的. 使用带有负载平衡的多个服务器组件,取代单一的组件,可以通过冗余提高可靠性.负载平衡服务通常是由专用软体和硬件来完成. 负载平衡最重要的一个应用是利用多台服务器提供单一服务,这种方案有时也称之为服务器农场.通常,负载平衡主要应用于Web网站,大型的Internet

  • 在Windows下如何安装Tomcat服务器搭建

     相关阅读: 在MyEclipse上部署Tomcat服务器的方法 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选服务器. 在Windows下安装Tomcat服务器的方式有两种,一种是直接安装,一种是绿色版,解压后就可以直接使用的 这篇文章为大家介绍第二种方式 首先从http://download.csdn.net/detail/u010105970/9493219中下载To

  • Docker下搭建一个JAVA Tomcat运行环境的方法

    前言 Docker旨在提供一种应用程序的自动化部署解决方案,在 Linux 系统上迅速创建一个容器(轻量级虚拟机)并部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装.部署和升级,非常方便.因为使用了容器,所以可以很方便的把生产环境和开发环境分开,互不影响,这是 docker 最普遍的一个玩法.更多的玩法还有大规模 web 应用.数据库部署.持续部署.集群.测试环境.面向服务的云计算.虚拟桌面 VDI 等等. 主观的印象:Docker 使用 Go 语言编写,用 cgroup 实现

  • Tomcat服务器搭建教程

    分享Tomcat服务器搭建教程,具体如下 第一步:Tomcat 的下载 官方下载网址为:http://tomcat.apache.org/下载界面如下:选则Download下你要安装的版本进行下载. 第二步:安装Tomcat 1:环境设置 下载的是windows安装版,直接点击即可安装,但在安装前必须要进行环境设置–>设置Tomcat运行时依赖的JDK/JRE. JDK设置方法:选择我的电脑->属性->高级系统设置->环境变量->用户变量下选择"新建" 如

  • 详解通过Docker搭建Mysql容器+Tomcat容器连接环境

    1.实验目的:web容器能访问部署在另外容器中的MySQL 2.步骤1:拉取mysql镜像,拉取命令如下: docker pull mysql//官网的最新mysql进行 3.步骤2:拉取tomcat镜像,拉取命令如下: docker pull tomcat --name xuguokun/jdk-tomcat 4.步骤3:创建mysql的一个容器,容器的名字是mymysql,创建命令如下: 复制代码 代码如下: docker run --name mymysql -p 3306:3306  -

随机推荐