前提:docker已安装
(附docker常用命令:
查看镜像列表:docker images
查看运行中的容器: docker ps
查看所有容器: docker ps -a
停止容器:docker stop cid(容器id或名称)
重启容器:docker restart cid(容器id或名称)
启动已停止的容器:docker start cid(容器id或名称)
删除容器(只能删除已经停止的容器): docker rm cid(容器id或名称)
删除镜像(若镜像中有容器则必须先删除容器): docker rmi imageid(镜像id或名称)
一、拉取tomcat镜像
命令:docker pull tomcat
1、等待下载完成后,我们就可以在本地镜像列表里查到REPOSITORY为tomcat的镜像。
命令:docker images
2、创建工作目录,并进入到该目录
用rz命令将项目上传到此目录(使用的putty工具必须是支持上传文件,如果命令使用不了则安装,命令:yum -y install lrzsz),
附putty工具下载链接:https://pan.baidu.com/s/1tixc1Yh8GQ9JbgVWFXavug
提取码:rxwm
二、运行容器
第一种方式
运行容器然后将项目复制到容器种
1、启动容器:
运行命令docker run --name tomcat -d -p 8111:8080 tomcat
-p 主机端口(外网映射对应端口):tomcat端口 --name 容器名称 tomcat(镜像名称)
此时tomcat已在后台运行
- 进入容器
找到tomcat中webapps目录,进入命令:docker exec -it tomcat /bin/bash
3、将项目放入tomcat容器中
命令:docker cp AllLogin.war tomcat:/usr/local/tomcat/webapps
docker cp (项目名) 镜像名(或镜像id):/usr/local/tomcat/webapps(此目录路径为官方tomcat镜像目录)
第二种方式
将webapps挂载到主机目录,今后升级更换项目只需要将项目包放入此路径:
运行命令:
docker run -d -p 8111:8080 --name login -v /opt/project/loginweb/webapps:/usr/local/tomcat/webapps tomcat
解释:--name 容器名 -v 主机绝对路径:容器绝对路径 要使用的镜像名
第三种方式
用Dockerfile创建:
1、创建Dockerfile:touch Dockerfile
2、编辑Dockerfile:vi Dockerfile
FROM tomcat:latest
COPY XXX.war webapps
#XXX.war(当前目录下你上传进来的项目包) (镜像中webapps的路径)
编辑完成按下esc,然后输入冒号+wq,然后按回车,即:wq
3、构建项目镜像,命令:docker build -t web .
-t 镜像名(自定义) 最后有一点. ,即当前目录
4、运行容器,命令:docker run -d -p 8111:8080 --name web web