约束要求和建议
- 请勿更改 Tomcat 的默认启动脚本、目录与日志路径,确保可以获得完整的 EDAS 产品功能。
- 随着 EDAS 新应用版本发布,需要重新打包发布镜像,拥有 EDAS 新功能特性。若距离上次打包镜像发布的时间较长,建议更新基础镜像,重新打包发布。详情参考 下载 EDAS 基础镜像。
- 目录清单Tomcat 目录:/home/admin/taobao-tomcat-production-7.0.59.3/
- 日志目录: /root/logs/
- WAR 包目录:/home/admin/taobao-tomcat-production-7.0.59.3/deploy/
基础镜像定制
基础镜像定制有以下3种方式:
方式一:编写 Dockerfile,向容器内复制本地文件,或执行命令
在拉取所需的基础镜像后,可通过编写 Dockerfile 方式,制作标准镜像。如下为 [backcolor=transparent]发布 WAR 包 与 [backcolor=transparent]修改 Tomcat 配置 两种示例。
[backcolor=transparent]注意:请勿使用 CMD 命令自定义镜像启动脚本
例 1:将本地应用 /tmp/edas-app.war 放入镜像,以镜像方式发布应用。
- [backcolor=transparent]FROM registry[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]com[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]-[backcolor=transparent]container[backcolor=transparent]:[backcolor=transparent]3.2
- [backcolor=transparent]ADD [backcolor=transparent]/[backcolor=transparent]tmp[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]-[backcolor=transparent]app[backcolor=transparent].[backcolor=transparent]war [backcolor=transparent]/[backcolor=transparent]home[backcolor=transparent]/[backcolor=transparent]admin[backcolor=transparent]/[backcolor=transparent]taobao[backcolor=transparent]-[backcolor=transparent]tomcat[backcolor=transparent]-[backcolor=transparent]production[backcolor=transparent]-[backcolor=transparent]7.0[backcolor=transparent].[backcolor=transparent]59.3[backcolor=transparent]/[backcolor=transparent]deploy[backcolor=transparent]/
例 2:替换 server.xml,并安装系统监控工具 sar。
- [backcolor=transparent]FROM registry[backcolor=transparent].[backcolor=transparent]aliyuncs[backcolor=transparent].[backcolor=transparent]com[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]/[backcolor=transparent]edas[backcolor=transparent]-[backcolor=transparent]container[backcolor=transparent]:[backcolor=transparent]3.2
- [backcolor=transparent]ADD [backcolor=transparent]/[backcolor=transparent]tmp[backcolor=transparent]/[backcolor=transparent]server[backcolor=transparent].[backcolor=transparent]xml [backcolor=transparent]/[backcolor=transparent]home[backcolor=transparent]/[backcolor=transparent]admin[backcolor=transparent]/[backcolor=transparent]taobao[backcolor=transparent]-[backcolor=transparent]tomcat[backcolor=transparent]-[backcolor=transparent]production[backcolor=transparent]-[backcolor=transparent]7.0[backcolor=transparent].[backcolor=transparent]59.3[backcolor=transparent]/[backcolor=transparent]conf[backcolor=transparent]/[backcolor=transparent]server[backcolor=transparent].[backcolor=transparent]xml
- [backcolor=transparent]RUN yum install [backcolor=transparent]-[backcolor=transparent]y sysstat
Dockerfile 编写完成后,可直接发布镜像
方式二:使用本地 Docker 命令,向容器内复制本地文件
与文件复制 cp 命令基本一致,执行如下命令,将复制本机 /tmp/app.war 到打包环境 WAR 包目录中。
格式:
上方命令为示例,实际执行命令如下。作用为,复制本地文件 /tmp/app.war 至容器内 WAR 包部署目录:
docker cp /tmp/app.war edas-build-package:/home/admin/taobao-tomcat-production-7.0.59.3/deploy/
[font=PingFangSC, "]
方式三:进入 Docker 容器,下载远程文件
执行命令 docker exec -it edas-build-package bash,进入容器。
执行命令 wget http://anything-you-want/本地保存路径,下载文件。
部署 WAR 包