美文网首页开发环境工作专题
使用Dockerfile制作tomcat镜像

使用Dockerfile制作tomcat镜像

作者: 撸大师 | 来源:发表于2016-08-12 10:49 被阅读2223次

    前言:安装好docker,简单熟悉下命令后,现在学习下以Dockerfile自定义image。

    Docker之Dockerfile语法详解

    1. 建立简单文件服务器

    • 这个文件服务器给下面的 Dockerfile 提供 tomcat和jdk下载地址
    > cat /data/scripts/simple_ftp_py.sh 
    #!/bin/bash
    
    ftp_dir=/data/packages
    ftp_port=1234
    
    cd $ftp_dir
    python -m SimpleHTTPServer $ftp_port
    
    > nohuo bash /data/scripts/simple_ftp_py.sh &
    

    查看

    ftp

    2. 编写Dockerfile

    > cat /data/docker/dockerfile/tomcat7/Dockerfile
    # bash image
    FROM 1.1.1.100:5000/centos
    
    MAINTAINER itimor "itimor@126.com"
    
    # update source
    # yum update -y
    
    # Install JDK 8
    RUN cd /tmp && curl -O -s 1.1.1.100:1234/jdk-8u74-linux-x64.tar.gz && tar xf jdk-8u74-linux-x64.tar.gz -C /usr/local/
    
    ENV JAVA_HOME /usr/local/jdk1.8.0_74
    ENV PATH $PATH:/$JAVA_HOME/bin
    
    # Install tomcat7
    RUN cd /tmp && curl -O -s 1.1.1.100:1234/apache-tomcat-7.0.63.tar.gz && tar xf apache-tomcat-7.0.63.tar.gz && mv apache-tomcat-7.0.63 /usr/local/tomcat7
    
    # Add tomcat.sh
    ADD tomcat7 /etc/init.d/tomcat7
    RUN chmod 755 /etc/init.d/tomcat7
    
    # Expose ports
    EXPOSE 8080
    
    # Define default command
    #ENTRYPOINT cd /usr/local/tomcat7/bin && ./startup.sh
    CMD /etc/init.d/tomcat7 start && tail -f /usr/local/tomcat7/logs/catalina.out
    

    3. tomcat启动文件

    cat /data/docker/dockerfile/tomcat7/tomcat7

    #!/bin/bash
    
    export JAVA_HOME=/usr/local/jdk1.8.0_74
    export TOMCAT_HOME=/usr/local/tomcat7
      
    case $1 in  
    start)  
      sh $TOMCAT_HOME/bin/startup.sh  
    ;;  
    stop)  
      sh $TOMCAT_HOME/bin/shutdown.sh  
    ;;  
    restart)  
      sh $TOMCAT_HOME/bin/shutdown.sh  
      sh $TOMCAT_HOME/bin/startup.sh  
    ;;  
    esac  
    exit 0 
    

    4. 验证 Dockerfie

    执行 Dockerfie

    docker build -t 1.1.1.5000/tomcat7-jdk8 .
    

    启动容器并查看tomcat日志

    docker run -it -p 8888:8080 --name tomcat7 1.1.1.5000/tomcat7-jdk8
    

    参数说明:

    -d 后台运行
    -it 前台交互式运行
    -p 8888:8080 将宿主机的8888端口映射到容器的8080端口
    —name tomcat7 给容器命名为tomcat7

    浏览器访问

    tomcat7

    • 好了,Dockerfile构建tomcat成功。

    相关文章

      网友评论

        本文标题:使用Dockerfile制作tomcat镜像

        本文链接:https://www.haomeiwen.com/subject/aynssttx.html