1、下载对应版本的安装包,常用的版本主要有:
- linux x86
- linux x64
- linux arm
- linux arm x64
2、编写 Dockerfile 文件
# 基础镜像
FROM centos:7
# 维护人
MAINTAINER <xxxxxx@163.com>
# 更新日期
ENV REFRESHED_AT 2019-12-25
# 进入镜像目录下的 /usr 目录
WORKDIR /usr
# 在 /usr 目录下创建 jdk 目录
RUN mkdir jdk
# 在 /usr 目录下创建 tomcat 目录
RUN mkdir tomcat
# 将本机的jdk安装包上传到镜像 /usr/jdk 目录下
COPY jdk-8u192-linux-x64/ /usr/jdk/
# 将本机的tomcat安装包上传到镜像 /usr/tomcat目录下
COPY apache-tomcat-9.0.30/ /usr/tomcat/
# 设置镜像的环境变量
ENV JAVA_HOME=/usr/jdk
ENV JRE_HOME=$JAVA_HOME/jre
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH=/sbin:$JAVA_HOME/bin:$PATH
# 开放端口
EXPOSE 8080
# 启动命令
ENTRYPOINT ["/usr/tomcat/bin/catalina.sh","run"]
3、构建镜像
#-t,目标镜像名;. 当前目录
sudo docker build -t tomcat:9.0.30 .
4、查看存在的镜像
sudo docker images
5、启动容器
#-d,后台运行;-p,物理机端口:容器端口;--name,容器名称
sudo docker run -d -p 8080:8080 --name tomcat_9 tomcat:9.0.30
6、访问
7、容器启动成功后,可进入容器查看其中的文件
sudo docker container ls
sudo docker ps
#-it,可交互的终端
sudo docker exec -it <container_id> /bin/bash
8、查看日志
sudo docker logs <container_id>
9、在其他服务器上运行容器(需要先上传制作好的镜像到镜像服务器)
sudo docker pull tomcat:9.0.30 # 载入镜像
sudo docker run -d -P tomcat:9.0.30
10、删除容器/镜像(镜像启动后会创建容器)
#删除单个容器
sudo docker rm -f <容器id>
#删除所有停止的镜像
sudo docker container prune
#强制删除镜像
sudo docker rmi -f <镜像名>
<============分割线===============>
①、容器映射本机目录
#-v 本地目录:docker目录,映射本地目录到docker目录,这样docker相当于加载本地的目录运行
sudo docker run -d -p 8080:8080 -v /opt/docker/webapps:/usr/tomcat/webapps --name tomcat_9 tomcat:9.0.30
②、映射本机单个war文件
sudo docker run -d -p 8080:8080 -v /opt/docker/webapps/HelloWorld.war:/usr/tomcat/webapps/HelloWorld.war --name tomcat_9 tomcat:9.0.30
本文作者为新逸网络,转载请注明。