【docker】从DockerHub公共镜像库中获取tomcat基础Docker镜像,并创建web容器
1、 docker search tomcat #搜索tomcat相关镜像
2、 docker pull cheewai/tomcat #下载合适的tomcat镜像
3、 docker images #查看下载的镜像
4、docker run -i -t -d -v /home/chen/:/mnt/ cheewai/tomcat #创建并运行容器,同时把本地/home/chen/目录挂载到容器的/mnt/目录下
5、通过 docker attach ${容器id} 或者docker exec -it ${容器id} /bin/bash 命令进入容器里 面
6、通过 find ./ -name tomcat 查找tomcat安装路径
7、进入/mnt/目录查看和本地/home/chen/目录进行对比内容一直
8、cp /mnt/myweb.war /user/tomcat/webapps/ #把war包移动到tomcat的webapps目录 下
9、按Ctrl+p 和Ctrl+q退出容器,并执行 docker commit ${容器id} chen/myweb2 命令提交 容器生成一个的镜像
10、docker images #查看新生成的镜像
11、docker run -i -t -d -v /home/chen/:/mnt/ -p 8090:8080 --name web-server chen/myweb2
#通过chen/myweb2镜像创建并一直运行容器,同时把容器的8080端口映射到宿主机的8090端口,通过宿主机的ip:8090就可以访问容器的8080端口。
12 、docker ps #查看新创建的容器
13、进入容器并启动tomcat,然后通过宿主机ip:8090访问tomcat,同时访问myweb项目,如下图:
注:把项目包放到tomcat下不仅可以通过上面的方式,同时还可以通过 docker cp 命令或者通过Dockerfile指令(正式使用的时候建议通过Dockerfile指令)
原文:https://blog.csdn.net/chen_25_15/article/details/79720037
CentOS环境下Docker私有仓库搭建
https://www.cnblogs.com/kangoroo/p/7994801.html
docker run 和 docker exec 的差异
docker run :根据镜像创建一个容器并运行一个命令,操作的对象是 镜像;
docker exec :在运行的容器中执行命令,操作的对象是 容器。
语法
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
OPTIONS说明:
-
-d :分离模式: 在后台运行
-
-i :即使没有附加也保持STDIN 打开
-
-t :分配一个伪终端
实例
在容器 mynginx 中以交互模式执行容器内 /root/runoob.sh 脚本:
runoob@runoob:~$ docker exec -it mynginx /bin/sh /root/runoob.sh http://www.runoob.com/
在容器 mynginx 中开启一个交互模式的终端:
runoob@runoob:~$ docker exec -i -t mynginx /bin/bash