zoukankan      html  css  js  c++  java
  • 基于dockerfile制作Tomcat镜像

    一、安装docker

    1、安装依赖环境

    [root@jenkins ~]# yum -y install yum-utils device-mapper-persistent-data  lvm2

    2、准备镜像源

    [root@jenkins ~]# curl https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo

    3、安装docker-ce

    [root@jenkins ~]# yum -y install docker-ce

    4.启动docker

    [root@docker ~]# systemctl start docker
    [root@docker ~]# systemctl enable docker
    [root@docker ~]# docker version                     #查看docker版本
    [root@docker tomcat]# iptables -F
     
    二、配置环境
    [root@localhost ~]# hostname docker
    [root@localhost ~]# bash
    [root@docker tomcat]# systemctl stop firewalld
    [root@docker tomcat]# setenforce 0
     
    三、构建镜像
    1、首先建一个目录构建我们的环境。
    [root@docker ~]# mkdir tomcat
    [root@docker ~]# cd tomcat/
    2、上传 tomcat 和 jdk 到该目录下
    [root@docker tomcat]# ls
    apache-tomcat-8.5.40.tar.gz  jdk-8u191-linux-x64.tar.gz
    3、编辑 Dockerfile
    [root@docker tomcat]# vim Dockerfile
    FROM centos:7
    MAINTAINER from crushlinux <crushlinux@163.com>
     
    #copy jdk and tomcat into image
    ADD ./apache-tomcat-8.5.40.tar.gz /root
    ADD ./jdk-8u191-linux-x64.tar.gz /root
     
    #set environment variable
    ENV JAVA_HOME /root/jdk1.8.0_191
    ENV PATH $JAVA_HOME/bin:$PATH
     
    #define entry point which will be run first when the container starts up
    ENTRYPOINT /root/apache-tomcat-8.5.40/bin/startup.sh && tail -F /root/apache-
    tomcat-8.5.40/logs/catalina.out
    4、构建镜像
    [root@docker tomcat]# docker build -t crushlinux/tomcat:centos .
    -t 选择指定生成镜像的用户名,仓库名和 tag
    --rm=true 指定在生成镜像过程中删除中间产生的临时容器。
     
    5、查看新产生的镜像
    [root@docker tomcat]# docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    crushlinux/tomcat   centos              5d715fc6dd64        16 minutes ago      613MB
    6、运行镜像
    [root@docker tomcat]# docker run -d -p 8090:8080 crushlinux/tomcat:centos
    [root@docker tomcat]# docker ps -a
    CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS                      PORTS                    NAMES
    59724a2cdaea        crushlinux/tomcat:centos   "/bin/sh -c '/root/a…"   13 minutes ago      Up 13 minutes               0.0.0.0:8090->8080/tcp   zealous_tharp
    -p 指定主机 80 端口与容器 8080 端口进行绑定
    -d 指定容器运行后与当前 tty 分离,后台运行
    65a0 是镜像的 ID 前 4 位。
    通过 http://宿主机 IP:8090,即可看见我们熟悉的 tomcat 首页了。

     

  • 相关阅读:
    如何在Infraworks中创建多树种组成的森林
    Autodesk 2013开发者日(DevDays)又要来了 -- 北京(2013年11月7日)和上海(2013年11月11日)
    Mac下的Parallel Windows忘记密码怎么办?
    几个有用的JSON工具
    使用Autodesk OAuth服务在用户认证的示例
    ElasticSearch(九)e代驾使用Elasticsearch流程设计(Yii1版本)
    ElasticSearch(八)Elasticsearch-head 连接不上Elasticsearch的原因和解决方案
    ElasticSearch(七) Elasticsearch在Centos下搭建可视化服务
    Yii1自定义 CGridView 中的操作按钮中 CButtonColumn 选项
    Mysql BLOB、BLOB与TEXT区别及性能影响、将BLOB类型转换成VARCHAR类型
  • 原文地址:https://www.cnblogs.com/ZCQ123456/p/11918092.html
Copyright © 2011-2022 走看看