自动/持续部署Docker 的tomcat web项目
本文需要一定的docker、tomcat、shell基础
docker安装tomcat
拉取Tomcat镜像
# 搜索tomcat镜像
docker search tomcat
# 拉取镜像
docker pull tomcat
查看镜像
docker images
启动tomcat镜像
docker run -it -d -p 8080:8080 --name tomcat tomcat
参数说明
- -i:以交互模式运行容器,通常与 -t 同时使用
- -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用
- -d:后台运行
- -p:端口映射
- –name :容器别名
查看正在运行的容器
docker ps
通过ip:8080
,访问
部署web项目
编辑Dockerfile文件
Dockerfile文件用于制作包含war包的新tomcat镜像。
from tomcat
MAINTAINER tomig@q.com
RUN rm -rf /usr/local/tomcat/webapps/*
COPY demo.war /usr/local/tomcat/webapps
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
说明
from tomcat # tomcat的镜像名
MAINTAINER mail@qq.com # 作者标记
RUN rm -rf /usr/local/tomcat/webapps/* # 删除tomcat原有的web项目
COPY demo.war /usr/local/tomcat/webapps # 将war包放置到tomcat镜像的webapps目录下
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # 设置镜像时区
制作docker镜像
docker build -t demo:v1 .
参数说明
- -t :镜像的名字及标签
- demo:v1 :镜像名+标签名
.
:末尾有个.
,表示在当前路径构建
查看构建好的镜像
docker images
启动新镜像
docker run -d -p 8080:8080 --name demo demo:v1
成功访问
ip:8080/项目名
查看日志
查看web项目日志输出
docker logs -f 容器id/name