Docker部署Java Web系统

1.在root目录下创建一个路径test/app mkdir test && cd test&& mkdir app &&cd app

2.将apache-tomcat-7.0.29.tar.gz及jdk-7u25-linux-x64.tar.gz拷贝 到app目录下

3.解压两个tar.gz文件

tar -zxvf apache-tomcat-7.0.29.tar.gz tar -zxvf jdk-7u25-linux-x64.tar.gz

4.对解压后的文件进行重命名

mv apache-tomcat-7.0.29 tomcat mv jdk-7u25-linux-x64 jdk

5.在app目录下,制作Dockerfile文件来创建镜像

touch Dockerfile

6.Dockerfile文档内容及注解

-------------------------------------------------------------------------Dockerfile内容---------------------------------------------------------------

#使用ubuntu:14.04作为基础镜像
   FROM ubuntu:14.04
#指定镜像创建者信息
  MAINTAINER test xxxx@xxx.com
#创建日期
  ENV REFRESHED_AT 2017-2-15
#切换镜像目录,进入/usr目录
  WORKDIR /usr
#在/usr/下创建jdk目录,用来存放jdk文件
  RUN mkdir jdk
#在/usr/下创建tomcat目录,用来存放tomcat
  RUN mkdir tomcat
#切换镜像的目录至/usr/jdk
  WORKDIR /usr/jdk/

#将宿主机的jdk目录下的文件拷至镜像的/usr/jdk目录下
   ADD jdk /usr/jdk
#切换镜像的目录至/usr/tomcat
   WORKDIR /usr/tomcat
#将宿主机的tomcat目录下的文件拷至镜像的/usr/tomcat目录下
   ADD tomcat /usr/tomcat
#设置环境变量
   ENV JAVA_HOME=/usr/jdk
   ENV JAVA_BIN=/usr/jdk/bin
   ENV PATH=$PATH:$JAVA_HOME/bin
   ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
#切换工作目录到ROOT下
   WORKDIR /usr/tomcat/webapps/ROOT
#删除tomcat默认的项目文件
   RUN rm -rf *
#将自己的xxx.war系统添加到docker镜像中tomcat下的ROOT目录下
  ADD webapp /usr/tomcat/webapps/xxx.war
#公布tomcat的8080端口
  EXPOSE 8080
#启动tomcat
  ENTRYPOINT ["../../bin/catalina.sh","run"]

--------------------------------------------------------------------------------------------------------------------------------------------------------

7.通过Dockerfile来创建镜像

命令:   docker  build  -t  镜像名称:标签 Dockerfile位置

docker  build  -t  tms:1.0  .  (.代表当前目录)

8.至此就把Java Web系统制作成一个image,通过docker images来验证

9.通过刚构建镜像来启动一个Docker 容器

命令: docker run -d -p 宿主机映射端口:容器暴露端口 --name 容器名  镜像名称/镜像ID

-d 参数: 后端启动模式

-p 参数: 宿主机端口与容器端口的映射

--name 参数: 给容器起个别名

docker run -d -p 8081:8080 --name 容器名称  镜像name:镜像tag

10.通过docker ps -a来验证

Docker学习笔记三:Docker部署Java web系统的更多相关文章

  1. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  2. Docker学习笔记_10 docker应用 - 部署TOMCAT服务

    选择基镜像 基镜像使用dokcer hub官方提供的tomcat8 alpine当前最新版本,https://hub.docker.com/_/tomcat/ docker pull tomcat:8 ...

  3. Docker学习笔记三

    4.Docker数据管理 4.1.数据卷 数据卷是一个可供容器使用的特殊目录,它将主机操作系统目录直接映射进容器,类似与Linux的mount行为. 特性: 数据卷可以在容器之间共事和重用,容器间传递 ...

  4. Docker学习笔记2: Docker 概述

    一.什么是Docker Docker是基于Go语言实现的云开源项目. Docker 的主要目标是:"Bulid,Ship and  Run Any App ,AnyWhere" , ...

  5. Docker学习笔记之Docker的数据管理和存储

    0x00 概述 数据是应用程序重要的产出,所以很好的管理和存储数据,是对应用程序劳动结果的尊重.特别是在大数据时代,所有的数据都是重要的资产,保护好数据是每个开发者必须掌握的技能.我们知道,在 Doc ...

  6. Docker学习笔记之Docker 的简历

    0x00 概述 在了解虚拟化和容器技术后,我们就更容易理解 Docker 的相关知识了.在这一小节中,我将介绍关于 Docker 的出现和发展,Docker 背后的技术.同时,我们将阐述 Docker ...

  7. DOCKER 学习笔记7 Docker Machine 在阿里云实例化ECS 以及本地Windows 实例化虚拟机实战

    前言 通过以上6小节的学习,已经可以使用DOCKER 熟练的部署应用程序了.大家都可以发现使用 DOCKER 带来的方便之处,因为现在的话,只是在一台服务器上部署,这样部署,我们只需要一条命令,需要的 ...

  8. DOCKER 学习笔记7 Docker Machine 建立虚拟机实战,以及错误总结

    前言 通过以上6小节的学习,已经可以使用DOCKER 熟练的部署应用程序了.大家都可以发现使用 DOCKER 带来的方便之处,因为现在的话,只是在一台服务器上部署,这样部署,我们只需要一条命令,需要的 ...

  9. DOCKER 学习笔记8 Docker Swarm 集群搭建

    前言 在前面的文章中,已经介绍如何在本地通过Docker Machine 创建虚拟Docker 主机,以及也可以在本地Windows 创建虚拟主机,也是可以使用的.这一节,我们将继续学习 Docker ...

随机推荐

  1. MSP430的JTAG接口和BSW接口

    1.JTAG口,JTAG引脚如下定义:  单片机TCK——测试时钟输入,接仿真器7脚  单片机TDI——测试数据输入,接仿真器2脚  单片机TDO——测试数据输出,接仿真器1脚  单片机TMS——测试 ...

  2. Arduino 101/Genuino101使用-第2篇

    1. Arduino 101编程只是在ARC的核心上进行,其具体架构为ARCv2EM.. 2. 而Quark核心,从目前可知的信息来看,其应该运行着名为Zephyr的RTOS 3.101并没有EEPR ...

  3. Eclipse 使用过程中的问题及解决方法

    1.Eclipse中java文件和jsp字体大小设置 1.更改所有文件的字体显示大小过程: Window->preferences->General->Appearance-> ...

  4. 探寻ASP.NET MVC鲜为人知的奥秘(1):对LESS的支持

    在ASP.NET MVC3中(从那时开始),我们拥有了对js和css等文件的捆绑(Bundling)和压缩(Minification)的能力,这是ASP.NET性能优化工作的一部分. 想一下很久以前, ...

  5. 基于MapReduce的(用户、物品、内容)的协同过滤推荐算法

    1.基于用户的协同过滤推荐算法 利用相似度矩阵*评分矩阵得到推荐列表 已经推荐过的置零 2.基于物品的协同过滤推荐算法 3.基于内容的推荐 算法思想:给用户推荐和他们之前喜欢的物品在内容上相似的物品 ...

  6. html js div随鼠标移动

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. NUMA 体系架构

    NUMA 体系架构 SMP 体系架构 NUMA 体系架构 NUMA 结构基本概念 Openstack flavor NUMA 策略 Nova 实现 NUMA 流程 1. SMP 体系架构 CPU 计算 ...

  8. day05 字典 dict

    今日内容: 字典 成对的保存数据. 以key:value的形式保存 用{}表示,每一项内容都是key:value, 每项数据之间用逗号隔开 字典中的key是不能重复的. 存储是依靠着key来计算的. ...

  9. eBay报告:德国或将成为外贸电商热门市场

    [亿邦动力网讯]1月3日消息,日前,跨境电商平台eBay发布公告称,自2014年1月中旬起,卖家在eBay德国 ( eBay.de ).eBay 奥地利 ( eBay.at ) 或eBay瑞士 ( e ...

  10. excel导出功能原型

    本篇博客是记录自己实现的excel导出功能原型,下面我将简单介绍本原型: 这是我自制的窗体,有一个ListView和一个Button(导出)控件. 这是我在网上找到了使用exel需要引用的库. usi ...