Docker部署tomcat及应用

前提Docker已安装完成。

由于测试网无法直接连入互联网,所以在本机虚拟机内下载tomcat镜像并传到测试网主机中。

虚拟机内执行

查找tomcat镜像;

# docker search tomcat

下拉tomcat镜像;

# docker pull docker.io/tomcat

查看镜像;

[root@localhost docker]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/tomcat latest f3159377bac1 2 weeks ago 463 MB

启动tomcat如下;

docker run -p 8081:8080 docker.io/tomcat

通过firefox访问locahost:8081实现访问tomcat;

[root@localhost docker]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
03511cba3861 f3159377bac1 "catalina.sh run" 5 hours ago Up 5 hours 0.0.0.0:8081->8080/tcp nifty_lumiere

将镜像文件导出为tar文件;

docker save f3159377bac1 > /tmp/docker_tar/tomcat.tar

将此tar文件导出传入测试网主机中,并导入docker镜像;

docker load < /root/tomcat.tar

查看离线环境镜像;

[root@centos7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> f3159377bac1 2 weeks ago 463 MB

由于信息不全使用如下命令添加信息;

docker tag [image id] [name]:[版本]

例如:

[root@centos7 ~]# docker tag f3159377bac1 docker-tomcat:latest
[root@centos7 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker-tomcat latest f3159377bac1 2 weeks ago 463 MB

离线环境下将war包放入/root/packages/docker_war,在运行时挂载到/usr/local/tomcat/webapps目录下;其中–privileged=true是授予docker挂载的权限

[root@centos7 docker_war]# docker run --privileged=true -v /root/packages/docker_war:/usr/local/tomcat/webapps -p 8082:8080 f3159377bac1

至此,已成功把web应用部署在Docker容器运行

 

原文地址:https://www.cnblogs.com/lirunzhou/p/9481806.html