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来创建镜像

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

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

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

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

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来验证

上一篇:python-模拟掷骰子,两个筛子数据可视化


下一篇:HTML5学习笔记<三>: HTML5样式, 连接和表格