opo 发表于 2017-12-6 21:44:55

Docker学习笔记三:Docker部署Java web系统

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来创建镜像
  命令:   dockerbuild-t镜像名称:标签 Dockerfile位置
              dockerbuild-ttms: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来验证
页: [1]
查看完整版本: Docker学习笔记三:Docker部署Java web系统