Dockerfile实战及应用

使用Dockerfile创建镜像案例

一、制作Tomcat镜像

1.准备好tomcat和jdk的压缩包,放入/docker目录,解压后重命名:

[root@192 docker]# tar -zxvf apache-tomcat-8.0.47.tar.gz 
[root@192 docker]# tar -zxvf jdk-8u77-linux-x64.tar.gz 
[root@192 docker]# mv apache-tomcat-8.0.47 tomcat
[root@192 docker]# mv jdk1.8.0_77 jdk

2.删掉jdk文件夹下多余文件, 降低build的镜像大小

rm -rf /docker/jdk/*src.zip \
/docker/jdk/lib/missioncontrol \
/docker/jdk/lib/visualvm \
/docker/jdk/lib/*javafx* \
/docker/jdk/jre/lib/plugin.jar \
/docker/jdk/jre/lib/ext/jfxrt.jar \
/docker/jdk/jre/bin/javaws \
/docker/jdk/jre/lib/javaws.jar \
/docker/jdk/jre/lib/desktop \
/docker/jdk/jre/plugin \
/docker/jdk/jre/lib/deploy* \
/docker/jdk/jre/lib/*javafx* \
/docker/jdk/jre/lib/*jfx* \
/docker/jdk/jre/lib/amd64/libdecora_sse.so \
/docker/jdk/jre/lib/amd64/libprism_*.so \
/docker/jdk/jre/lib/amd64/libfxplugins.so \
/docker/jdk/jre/lib/amd64/libglass.so \
/docker/jdk/jre/lib/amd64/libgstreamer-lite.so \
/docker/jdk/jre/lib/amd64/libjavafx*.so \
/docker/jdk/jre/lib/amd64/libjfx*.so

3.进入/docker目录, 在当前目录下创建Dockerfile文件

#使用的基础镜像
FROM centos
#作者信息
MAINTAINER by wanglinyong ([email protected])
 
#创建目录
RUN mkdir -p /java/jdk1.8.0_77
#把当前目录下的jdk文件夹添加到镜像
ADD jdk /java/jdk1.8.0_77
 
#创建tomcat目录
RUN mkdir -p /java/apache-tomcat-8.0.47
#把当前目录下的tomcat文件夹添加到镜像
ADD tomcat /java/apache-tomcat-8.0.47
 
#添加环境变量
ENV JAVA_HOME /java/jdk1.8.0_77
ENV CATALINA_HOME /java/apache-tomcat-8.0.47
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
 
#暴露8080端口
EXPOSE 8080
 
#启动时运行tomcat
CMD ["/java/apache-tomcat-8.0.47/bin/catalina.sh","run"]

4.开始构建docker镜像文件

[root@192 docker]#docker build -t centos-tomcat8:0.0.1 .

-t 设置tag名称, 命名规则registry/image:tag

. 表示使用当前目录下的Dockerfile文件

出现Successfully built b2fb42f77ca7,说明镜像创建成功,镜像创建完成之后,查看当前宿主机镜像列表

[root@192 docker]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos-tomcat8      0.0.1               ba6111759e00        49 seconds ago      398 MB
docker.io/centos    latest              5182e96772bf        2 months ago        200 MB

5.根据centos-tomcat8镜像创建一个容器并启动(如果有需要可以创建数据卷)

docker run -d -p 8081:8080 --name test-tomcat centos-tomcat8:0.0.1

参数说明:

  1. -d 后台运行
  2. -p 宿主机port:容器port (端口映射)
  3. --name 容器名称

然后直接访问http://192.168.108.128:8081/ 即可出现tomcat首页,如下

发布了7 篇原创文章 · 获赞 0 · 访问量 199

猜你喜欢

转载自blog.csdn.net/m0_37874989/article/details/104230023
今日推荐