Docker使用Dockerfile创建Centos(tomcat+jdk)镜像

Docker构建镜像的方法主要有两种:

    (1)使用docker commit命令

    (2)使用docker build命令和Dockerfile文件(更为强大、灵活和常用);

 一:准备centos镜像

docker pull centos

二:下载jdk、tomcat安装包,上传/usr/local/soft目录下

jdk1.8下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

tomcat8下载:https://tomcat.apache.org/download-80.cgi

三:解压,创建Dockerfile文件

tar -zxvf apache-tomcat-8.5.31.tar.gz #解压tomcat
tar -zxvf jdk-8u171-linux-x64.tar.gz #解压jdk
rm -rf apache-tomcat-8.5.31.tar.gz #删除安装包
rm -rf jdk-8u171-linux-x64.tar.gz #删除安装包

touch Dockerfile #创建文件
操作完成之后,soft目录内容如下:

 

四:编写Dockerfile文件

复制代码
#指定操作的镜像
FROM centos

# 维护者信息
MAINTAINER biubiu

#执行命令:创建目录
RUN mkdir -p /usr/local/soft
#将jdk1.8.0_171添加到镜像centos的/usr/local/soft/目录下,并命名为jdk
ADD jdk1.8.0_171 /usr/local/soft/jdk
#将apache-tomcat-8.5.31添加到镜像centos的/usr/local/soft/目录下,并命名为tomcat
ADD apache-tomcat-8.5.31 /usr/local/soft/tomcat

#添加环境变量
ENV JAVA_HOME /usr/local/soft/jdk
ENV CATALINA_HOME /usr/local/soft/tomcat
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin

#暴露8080端口
EXPOSE 8080

#启动时运行tomcat
CMD ["/usr/local/soft/tomcat/bin/catalina.sh","run"]
复制代码

FROM : 指定基础镜像,并且必须是第一条指令

MAINTAINER : 指定作者

RUN : 运行指定的命令

ADD : 复制命令,把文件复制到镜像中。

ENV : 设置环境变量

EXPOSE : 功能为暴漏容器运行时的监听端口给外部

CMD : 指定容器启动时运行的命令

五:构建Docker镜像

docker build -t repostory/centos_tomcat .

-t 设置tag名称, 命名规则registry/image:tag(若不添加版本号,默认latest)
. 表示使用当前目录下的Dockerfile文件(注意语句后面有一个点)

 六:启动镜像,访问

docker run -d -p 8080:8080 --name Icentos repostory/centos_tomcat

-d 后台运行     

-p 端口映射  宿主机port : 容器port

--name 指定容器运行名称

 

 

posted @   黄进广寒  阅读(766)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示