构建tomcat镜像

  1. 创建工作目录

[root@elk-node2 tomcat]# mkdir tomcat

[root@elk-node2 tomcat]# cd tomcat

[root@elk-node2 tomcat]# ls

apache-tomcat-8.5.16.tar.gz  jdk1.8.0_191  jdk-8u191-linux-x64.tar.gz

  1. 创建Dockfile 文件

FROM centos:latest

#维护该镜像的用户信息

MAINTAINER abc abc@163.com

#安装JDK环境,设置其环境变量

#RUN tar zxf jdk-8u191-linux-x86.tar.gz

ADD jdk1.8.0_191 /usr/local/jdk-8u191

ENV JAVA_HOME /usr/local/jdk-8u191

ENV JAVA_BIN /usr/local/jdk-8u191/bin

ENV JRE_HOME /usr/local/jdk-8u191/jre

ENV PATH $PATH:/usr/local/jdk-8u191/bin:/usr/local/jdk-8u191/jre/bin

ENV CLASSPATH /usr/local/jdk-8u191/jre/bin:/usr/local/jdk-8u191/lib:/usr/local/jdk-8u191/jre/lib/charsets.jar

#解压tomcat 并移动到响应位置

ADD apache-tomcat-8.5.16.tar.gz /usr/local/tomcat

#开启8080

  1. 用Dockerfile 生成镜像

[root@elk-node2 tomcat]# docker build -t tomcat:centos .

  1. 运行容器并验证

映射本地8080端口到容器的8080端口

[root@elk-node2 tomcat]# docker run -itd -p 8080:8080 tomcat:centos bash

812e52048354900515378927488e01206e39454ea2be732f39a428b10360fa6f

进入运行的容器,启动tomcat

[root@elk-node2 tomcat]# docker ps -a

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                         PORTS                    NAMES

812e52048354        tomcat:centos       "bash"                   53 seconds ago      Up 46 seconds                  0.0.0.0:8080->8080/tcp   clever_snyder

[root@elk-node2 tomcat]# docker exec -it 812 bash

[root@812e52048354 /]# /usr/local/tomcat/apache-tomcat-8.5.16/bin/startup.sh

Tomcat started.

[root@812e52048354 /]# exit

exit

[root@elk-node2 tomcat]# curl 192.168.30.25:8080

<!DOCTYPE html>

<html lang="en">

<head>

用Docker构建Tomcat镜像的更多相关文章

  1. docker构建tomcat镜像

    下载centos镜像 # docker pull daocloud.io/centos:7 [root@localhost ~]# docker pull daocloud.io/centos: : ...

  2. docker构建自定义镜像

    docker构建自定义镜像 要构建一个镜像,第一步准备所需要的文件,第二步编写Dockerfile文件,比如我现在构建一个java web镜像 第一步:准备java web工程的war包文件(这里假设 ...

  3. 如何使用Dockerfile构建Tomcat镜像并部署war

    我们都知道Docker构建一个镜像有两种方式: 使用`docker commit`命令 使用`Dockerfile`文件和`docker build`命令 那么这两种方式有何区别呢? 相同点:底层实现 ...

  4. dockerfile构建Tomcat镜像

    dockerfile构建Tomcat镜像 一.镜像分层概念 二.制作tomcat镜像 2.1.创建分层目录 [root@node2 ~]# mkdir /app/{web/{nginx,tomcat, ...

  5. docker制作tomcat镜像

    准备cestos镜像.tomcat.jdk cestos是docker pull下来的 在/opt/下创建docker:mkdir -p /opt/docker 把tomcat和jdk解压到docke ...

  6. Docker | 制作tomcat镜像并部署项目

    本文讲解如何制作自己的tomcat镜像,并使用tomcat部署项目 原料准备: tomcat.jdk安装包,dockerfile文件 步骤 1.准备压缩包 jdk-8u301-linux-x64.ta ...

  7. Docker构建YApi镜像, Docker安装YApi, Docker部署YApi

    概述 YApi 是高效.易用.功能强大的 api 管理平台,旨在为开发.产品.测试人员提供更优雅的接口管理服务.可以帮助开发者轻松创建.发布.维护 API,YApi 还为用户提供了优秀的交互体验,开发 ...

  8. Docker安装Tomcat镜像并部署web项目

    一.安装Tomcat 1.查找Docker Hub上的tomcat镜像 docker search tomcat 2.拉取官方的镜像 docker pull tomcat 等待下载完毕,需要一些时间. ...

  9. 用Docker构建MySQL镜像

    构建MySQL镜像 本文目的不仅仅是创建一个MySQL的镜像,而是在其基础上再实现启动过程中自动导入数据及数据库用户的权限设置,并且在新创建出来的容器里自动启动MySQL服务接受外部连接,主要是通过D ...

随机推荐

  1. c#基于事件模型的UDP通讯框架(适用于网络包编解码)

    之前写过一篇关于c#udp分包发送的文章 这篇文章里面介绍的方法是一种实现,可是存在一个缺点就是一个对象序列化后会增大非常多.不利于在网络中的传输. 我们在网络中的传输是须要尽可能的减小传送的数据包的 ...

  2. Python开发【第5节】【函数基础】

    1.函数 函数的本质就是功能的封装. 函数的作用 提升代码的重复利用率,避免重复开发相同代码 提高程序开发效率 便于程序维护 2.函数定义 def 函数名(参数): """ ...

  3. Java String常见问题

    一.怎样推断两个String是否相等??使用"=="还是使用"equals()"? 对String来说."=="是用来推断两个字符串(对象) ...

  4. post和get区别,其他答案真的太坑

    原理: get和post都是http定义与服务器交互的方法,还有put,delete url是网络上的资源,那么http中的get,post,put,delete对应的就是对这个资源的查,改,增,删四 ...

  5. ssh&amp;远程桌面连接工具finalshell

    无意间发现的一款工具,有兴趣的可以看看点我进入官网 百度云盘 链接:https://pan.baidu.com/s/1wMuGav64e2zV91QznBkvag 密码:zpyb软件特点直接搬运的官方 ...

  6. JSON使用讲解

    前端操作json  一.JSON字符串与JSON对象的区别 1. 一个对象以“{”  开始,     “}”结束.   每个“名称”后跟一个“:”(冒号):“‘名称/值’ 对”之间运用 “,”(逗号) ...

  7. JavaScript 兼容新旧版chrome和firefox的桌面通知

    1.新/旧版本的chrome和firefox都可支持,IE下不支持因此设置为了在最小化窗口处闪烁显示提示文字. 2.设置为提示窗口显示5秒即关闭. 3.可设置图标和点击提示窗口要跳转到的页面(见输入参 ...

  8. leetcode377 Combination Sum IV

    思路: dp. 实现: class Solution { public: int combinationSum4(vector<int>& nums, int target) { ...

  9. 【工具】Github

    项目目录结构设计与git远程仓库的建立 git码云仓库建立:在码云网站上新建组织和项目. 配置sshkey认证和公钥:命令行ssh-keygen -t rsa -C "xxxxx@xxxxx ...

  10. C++学习笔记(二)之数组

    数组作形参时,实际传入数组首地址 void print(const int*) void print(const int []) ]) 三种方法等价