Docker 安装Centos,Tomcat,Jdk等相关的自定义(Dockerfile)镜像
一、安装Centos镜像
这里Centos 安装 国内daocloud网站提供的官方镜像
docker pull daocloud.io/library/centos:latest

利用docker images查看已经安装的镜像
二、自定义Tomcat/Jdk镜像
因为不同项目对tomcat、jdk的版本要求不同,docker提供使用Dockerfile来定制镜像,首先创建一个干净的目录 tomcat8_jdk8 如:

然后将镜像需要的安装文件上传到该目录下,同时再创建一个名字为Dockerfile的文件

编辑Dockerfile文件:
FROM daocloud.io/library/centos:latest
MAINTAINER hujianjie2010@.com #把java与tomcat添加到容器中
COPY tomcat8 /usr/local/tomcat8/
COPY jdk1. /usr/local/jdk1./ #配置java与tomcat环境变量
ENV JAVA_HOME /usr/local/jdk1.
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/tomcat8
ENV CATALINA_BASE /usr/local/tomcat8
ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin #容器运行时监听的端口
EXPOSE
CMD /usr/local/tomcat8/bin/catalina.sh run

FROM 是指复用基础镜像,这里直接复用centos,如果需要可以复用其他的镜像(如:已经安装好ssh的镜像,这样复用后,子镜像也就继承了)
MAINTAINER hujianjie2010@163.com (MAINTAINER 指镜像的维护者)
COPY 复制文件:
COPY <源路径> ... <目标路径>(如果是宿主文件,推荐使用copy)
ADD 更高级的复制命令,如果源文件是压缩包,用ADD命令能够自动将源文件解压到目标目录
CMD 容器启动命令,与RUN命令相似
编辑完成后,使用 docker build -t tomcat8:1.0 命令生成镜像 -t 指定image的tags , 注意该命令后面的点 (.)指当前文件

镜像创建过程,每执行一条命令都会在当前镜像基础上创建一层,然后删除原来的镜像


Docker 安装Centos,Tomcat,Jdk等相关的自定义(Dockerfile)镜像的更多相关文章
- docker 容器 centos + tomcat + jdk
环境: 阿里云ecs服务器 步骤: 1.安装docker 2.获取centos镜像 3.下载tomcat 和 jdk 安装包 4.配置 1.安装docker https://www.cnblogs.c ...
- Docker 安装 CentOS
Docker 安装 CentOS CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise ...
- [第十六篇]——Docker 安装 CentOS之Spring Cloud直播商城 b2b2c电子商务技术总结
Docker 安装 CentOS CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise ...
- Docker使用Dockerfile创建Centos(tomcat+jdk)镜像
原文链接:https://blog.csdn.net/qq_37936542/article/details/80824389 Docker构建镜像的方法主要有两种: (1)使用docker c ...
- docker探索-docker安装运行tomcat(六)
前言 本地已经搭建好了,tomcat容器,本来想自己写一篇,在开源中国一篇不错的教程,就转载过来了 本文转自:https://my.oschina.net/sunchp/blog/61652 ...
- docker安装centos后没有ifconfig命令解决办法
使用docker pull centos命令下载下来的centos镜像是centos7的最小安装包,里面并没有携带ifconfig命令,导致我想查看容器内的ip时不知道该怎么办 yum provide ...
- docker安装mysql,tomcat,并且在tomcat可以访问到mysql
1.uname -an 查看当前系统版本 2.yum -y install docker 下载安装docker 3.service docker start 启动docker服务 4.docker ...
- 记录下为了玩 docker 安装 CentOS 7 最简化版后遇到的一些问题
今天我的腾讯云服务器在使用docker安装ElasticSearch和Kibana的时候内存不够,安装完直接卡死.所以无奈只能在本地上跑VMWare安装CentOS7来运行测试. 从阿里云镜像地址:h ...
- docker安装CentOS7及JNI使用相关过程记录
docker pull centos:centos7(拉取镜像) docker run -itd --name centos-test centos:centos7 (运行容器) docker exe ...
随机推荐
- java程序员如何编写更好的单元测试的7个技巧
详解 cppunit进行单元测试 单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的.很明确的功能是否正确.通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函 ...
- MTK 系统禁止通知状态栏下拉
之前看了网上很多修改,感觉太繁琐,修改代码太多,最后感觉还是自己找找,看能不能简单点 diff --git a/android/frameworks/base/packages/SystemUI/sr ...
- [转]WPF入口Application
1.WPF和 传统的WinForm 类似, WPF 同样需要一个 Application 来统领一些全局的行为和操作,并且每个 Domain (应用程序域)中只能有一个 Application 实例存 ...
- Nexus5 电信3G保留数据和Root升级Android 6.0
前提: A 备份手机重要数据,安全第一 B 进入twrp recovery 备份EFS,建议最好拷贝到电脑上(如果没有twrp,则需要先刷twrp,具体指令请看下面步骤第10条) C 因为Androi ...
- swift开发之--代理协议的使用
swift代理的使用,和oc版本有区别,区别还是蛮大的,不过和oc一样都是用于反向传值: 实现如下: 1,声明两个类 2,实现流程,viewcontroller页面点击按钮进入firstVC页面,然后 ...
- Ansible 使用 Playbook 管理 Nginx 配置文件
前面我们已经安装完 Nginx,但是在日常维护中经常需要修改配置文件,并重新加载配置文件,因此来写一个管理 Nginx 配置文件的 Playbook: [root@localhost ~]$ mkdi ...
- [XPath] XPath 与 lxml (一)XPath 术语
前言 这是一篇主要介绍 XPath 的文章,由于 JQuery 已经不支持 XPath,所以本文主要通过 Python 的 lxml.etree 来介绍 XPath. 什么是 XPath ? XPat ...
- api 25 PopupWindow会占据整个屏幕
解决方法:if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { // Android 7.x中,PopupWindow高度为match_pa ...
- thinkphp 控制器unset删除对象变量失败。。
今儿开发过程中发现 tp是unset 变量失败..具体代码 foreach( $this->menu as $k => $v){ if(0 == $v['flag']) unset($th ...
- Material Design系列第五篇——Working with Drawables
Working with Drawables This lesson teaches you to Tint Drawable Resources Extract Prominent Colors f ...