• dockerfile详解


    测试环境例子:

    vim authdockerfile

    ENV PROJECT spc-auth
    ENV PACKAGE ${PROJECT}.jar
    ENV WORKDIR /home/zengchengtest
    RUN mv /etc/localtime /etc/localtime.bak \
    && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    && echo 'Asia/Shanghai' >/etc/timezone \
    && mkdir -p $WORKDIR/logs
    ADD $PACKAGE $WORKDIR/$PACKAGE
    WORKDIR $WORKDIR
    CMD java -Djava.security.egd=file:/dev/./urandom -jar $PACKAGE |tee logs/$PROJECT.log
    EXPOSE 8810


    java环境:

    vim javadockerfile

    FROM java:8-jdk-alpine
    LABEL maintainer www.ctnrs.com
    ENV JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF8 -Duser.timezone=GMT+08"
    RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && \
         apk add -U tzdata && \
         ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    COPY hello.jar /
    EXPOSE 8888
    CMD ["/bin/sh", "-c", "java -jar $JAVA_OPTS /hello.jar"]


    nginx环境:

    vim nginxdockerfile

    FROM centos:7
    LABEL maintainer www.ctnrs.com
    RUN yum install -y gcc gcc-c++ make \
         openssl-devel pcre-devel gd-devel \
         iproute net-tools telnet wget curl && \
         yum clean all && \
         rm -rf /var/cache/yum/*

    ADD nginx-1.15.5.tar.gz /
    RUN cd nginx-1.15.5 && \
         ./configure --prefix=/usr/local/nginx \
         --with-http_ssl_module \
         --with-http_stub_status_module && \
         make -j 4 && make install && \
         mkdir /usr/local/nginx/conf/vhost && \
         cd / && rm -rf nginx* && \
         ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

    ENV PATH $PATH:/usr/local/nginx/sbin
    COPY nginx.conf /usr/local/nginx/conf/nginx.conf
    WORKDIR /usr/local/nginx
    EXPOSE 80
    CMD ["nginx", "-g", "daemon off;"]


    php环境:

    vim phpdockerfile

    FROM centos:7
    MAINTAINER www.ctnrs.com
    RUN yum install epel-release -y && \
         yum install -y gcc gcc-c++ make gd-devel libxml2-devel \
         libcurl-devel libjpeg-devel libpng-devel openssl-devel \
         libmcrypt-devel libxslt-devel libtidy-devel autoconf \
         iproute net-tools telnet wget curl && \
         yum clean all && \
         rm -rf /var/cache/yum/*

    ADD php-5.6.36.tar.gz /
    RUN cd php-5.6.36 && \
         ./configure --prefix=/usr/local/php \
         --with-config-file-path=/usr/local/php/etc \
         --enable-fpm --enable-opcache \
         --with-mysql --with-mysqli --with-pdo-mysql \
         --with-openssl --with-zlib --with-curl --with-gd \
         --with-jpeg-dir --with-png-dir --with-freetype-dir \
         --enable-mbstring --with-mcrypt --enable-hash && \
         make -j 4 && make install && \
         cp php.ini-production /usr/local/php/etc/php.ini && \
         cp sapi/fpm/php-fpm.conf /usr/local/php/etc/php-fpm.conf && \
         sed -i "90a \daemonize = no" /usr/local/php/etc/php-fpm.conf && \
         mkdir /usr/local/php/log && \
         cd / && rm -rf php* && \
         ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

    ENV PATH $PATH:/usr/local/php/sbin
    COPY php.ini /usr/local/php/etc/
    COPY php-fpm.conf /usr/local/php/etc/
    WORKDIR /usr/local/php
    EXPOSE 9000
    CMD ["php-fpm"]


    tomcat环境

    vim tomcatdockerfile

    FROM centos:7
    MAINTAINER www.ctnrs.com

    ENV VERSION=8.5.43

    RUN yum install java-1.8.0-openjdk wget curl unzip iproute net-tools -y && \
         yum clean all && \
         rm -rf /var/cache/yum/*

    ADD apache-tomcat-${VERSION}.tar.gz /usr/local/
    RUN mv /usr/local/apache-tomcat-${VERSION} /usr/local/tomcat && \
         sed -i '1a JAVA_OPTS="-Djava.security.egd=file:/dev/./urandom"' /usr/local/tomcat/bin/catalina.sh && \
         ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

    ENV PATH $PATH:/usr/local/tomcat/bin

    WORKDIR /usr/local/tomcat

    EXPOSE 8080
    CMD ["catalina.sh", "run"]

  • 相关阅读:
    高效存储过程分页
    c#函数参数
    MonoRail学习:可重复组件ViewComponents的使用
    跨域SSO的实现
    WebSockets基础
    NVelocity用法
    MonoRail MVC应用(2)-构建多层结构的应用程序
    MonoRail学习-入门实例篇
    关于transform属性导致字体模糊的问题
    在小程序中实现收缩展开
  • 原文地址:https://www.cnblogs.com/pengrj/p/15765667.html
Copyright © 2020-2023  润新知