dockerfile初试之tomcat8封装
前面学习了一些docker相关资料,有看到dockerfile这个东东,一时没看得太明白,理论给合实践是最好的学习方法,自己做一下就行了嘛。主要步聚记录如下:
1.下线tomcat,jdk部署包
apache-tomcat-8.5.31.zip jdk-8u171-linux-x64.tar.gz
2.建工作目录
mkdir tomcat8
3.解压部署包到工作目录
unzip apache-tomcat-8.5.31.zip -d tomcat8/
tar zxf jdk-8u171-linux-x64.tar.gz -C tomcat8/
#确认工作目录文档
[root@cnsz22VLK5820 tomcat8]# ls
apache-tomcat-8.5.31 dockerfile jdk1.8.0_171 run.sh
4.编写dockerfile
#确定基础镜像
FROM centos
MAINTAINER leo li
#设置tomcat 环境变量
ENV CATALINA_HOME /tomcat
ENV JAVA_HOME /jdk
#将tomcat和jdk上传(封装)到镜像中,并重命名镜像中的目录.
ADD apache-tomcat-8.5.31 /tomcat
ADD jdk1.8.0_171 /jdk
#ADD create
ADD run.sh /run.sh
RUN chmod +x /*.sh
RUN chmod +x /tomcat/bin/*.sh
EXPOSE 8080
CMD ["/run.sh"]
5 编写run.sh
#!/bin/bash
exec ${CATALINA_HOME}/bin/catalina.sh run
6.构建镜像
docker build -t mytomact8 .
7查看镜像
docker images |grep mytomcat
8 启动容器
docker run -d -p 8899:8080 mytomcat8
9 访问tomcat
chome输入: http://10.xxx.xx.96:8899/

Good job!
dockerfile初试之tomcat8封装的更多相关文章
- dockerfile封装docker镜像
一.使用都dockerfile封装docker镜像 1.在任意一个地方创建文件夹docker mkdir docker 2.进入文件夹并且下载一个django2.1.7的包以及一个epel.repo ...
- 实战docker,编写Dockerfile定制tomcat8镜像,实现web应用在线部署
最初在tomcat上部署web应用的方式,是通过maven的maven-compiler-plugin插件先打成war包,再将war包复制到tomcat的webapps目录下,后来用上了tomcat7 ...
- Dockerfile使用OracleJDK创建自定义tomcat8镜像
我们默认下载的tomcat镜像是用的openjdk ,但是我们有些项目必须使用oraclejdk 那就不能使用官方的tomcat镜像,只能重新自定义一个镜像 Dockerfile文件 FROM cen ...
- Docker dockerfile创建Eclipse镜像初试
抽空初步阅读了Docker技术入门与实战 [Kindle电子书] http://www.cnblogs.com/2018/p/4600116.html 现在想首先在开发环境下引入统一的环境,由于开发中 ...
- Dockerfile封装Django镜像
部署过程 1.查看镜像 docker images 2.在/opt下建立了docker目录,下载一个django-2.1.7的源码包, mkdir -p /opt/docker cd /docker ...
- 使用Dockerfile封装Django镜像
第一步: 在/opt下建立了docker目录,下载一个django-2.1.7的源码包, touch Dockerfile和run.sh,其中run.sh是用来执行Django的bash脚本,Dock ...
- docker镜像alpine封装nginx1.16.1【dockerfile】
github地址:https://github.com/laileman/Docker/Dockerfile/alpine-nginx1.16.1 1-目录结构 2- dockerfile内容 3- ...
- docker镜像ubuntu封装jdk1.8.0【dockerfile】
github地址:https://github.com/laileman/Docker/Dockerfile/ubuntu-jdk1.8.0_172 1-目录结构 2- dockerfile内容 3- ...
- podman初试-和docker对比
podman初试-和docker对比 1,什么是docker? Docker 是一个开源的应用容器引擎,属于 Linux 容器的一种封装,Docker 提供简单易用的容器使用接口,让开发者可以打包他们 ...
随机推荐
- [转]React Native 语言基础之ES6
React Native 是基于 React 这个前端框架来构建native app的架构.React Native基于ES6(即ECMAScript2015)语言进行开发的. JS的组成 1) 核心 ...
- spring整合redis配置
第一步:添加需要的jar包 <!-- redis --> <dependency> <groupId>redis.clients</groupId> & ...
- 使用VirtualBox安装Android 4.2.2 x86 .
http://blog.csdn.net/kunoy/article/details/8768205 virtual box 安装 android x86 不显示鼠标, --> 控制 --> ...
- WildcardMatching和Regex,通配符匹配和正则表达式匹配
WildcardMatching:通配符匹配 算法分析: 1. 二个指针i, j分别指向字符串.匹配公式. 2. 如果匹配,直接2个指针一起前进. 3. 如果匹配公式是*,在字符串中依次匹配即可. 注 ...
- HDU1402 A * B Problem Plus
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- Springer Latex投稿
大家好.我最近需要向springer旗下一期刊投稿,是用latex编写的.已经调试过,格式和出版的期刊比较接近.因为是第一次投国外期刊,所以没什么经验,在网上搜索了一些帖子,发现在投稿过程中还会出现这 ...
- 三十八 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)介绍以及安装
elasticsearch(搜索引擎)介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticse ...
- IOS-真机相关
真机调试 Certificates 证书 Identifiers 标示符 Profiles 描述文件 一. 证书,安装在电脑上,只有安装了证书的电脑,才有可能进行真机调试. - All - De ...
- linux的find命令详解
find命令是用来在给定的目录下查找符合给定条件的文件 find [OPTIONS] [查找起始路径] [查找条件] [处理动作] 一.OPTIONS参数 -P.-L.-H:控制软连接的对待方式, ...
- Fiddler工作原理与代理设置
1,什么是Fiddler Fiddler是一个http协议调试代理工具,它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据.设置断点.调试web应用.修改请求的 ...