• DockerFile


    概述:dockerfile 是一个文本文件,里面包含了各种命令,跟shell脚本有点类似,一般用来构建镜像和容器。

    FROM centos:7.4.1708
    MAINTAINER  Harvey "daniel.dong@wolaidai.com"
    
    ENV LANG en_US.UTF-8
    ENV TZ Asia/Shanghai
    
    # 更新yum 和安装常用工具
    RUN sed -i 's/enabled=1/enabled=0/g' /etc/yum/pluginconf.d/fastestmirror.conf && 
        sed -i "s/plugins=1/plugins=0/g" /etc/yum.conf && 
        yum -y install wget vim lrzsz net-tools telnet curl GraphicsMagick kde-l10n-Chinese glibc-common
    
    # 设置时区
    RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && 
        echo 'Asia/Shanghai' >/etc/timezone
    
    # 设置编码
    RUN echo "export LC_ALL=en_US.UTF-8"  >>  /etc/profile
    
    ENV APP_USER user00
    ENV APP_GROUP user00
    ARG uid=1005
    ARG gid=1005
    
    RUN groupadd -g $gid ${APP_GROUP} && 
        useradd ${APP_USER} -m -u $uid -g $gid -s /bin/bash
    
    COPY ./archives/vimrc /root/.vimrc
    COPY ./archives/vimrc /home/${APP_USER}/.vimrc
    RUN mkdir -p /opt /data && 
        chown ${APP_USER}.${APP_GROUP} /home/${APP_USER}/.vimrc && 
        sed -i 's;(^ {1,})([ "$PS1".*);1#2;' /etc/bashrc && 
        sed -i '/^ {1,}#[ "$PS1" = "\/a   [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\[\e[0;32;1m\]\u\[\e[0m\]@\[\e[0;36;1m\]\h\[\e[0m\] \[\e[0;33;1m\]\W\[\e[0m\]]\\$ "' /etc/bashrc
    
    VOLUME /opt
    VOLUME /data

    FROM 从哪个镜像创建容器 

    RUN 在容器内执行命令

    ENV 设置容器内的环境变量

    CMD 容器启动时执行的命令。一个dockerfile只能有一条cmd指令,以最后一个为准。

    ADD  <src><dest>将宿主机的文件拷贝到容器内, src可以是路径,url,压缩包.压缩包会自动解压成目录

    COPY  <src><dest>将宿主机的文件拷贝到容器内。

    ENTRYPOINT  启动容器后执行的命令。一个dockerfile只能有一条ENTRYPOINT指令,以最后一个为准

    ENTRYPOINT是启动容器内进程的真正命令,前面的CMD执行的命令只是它的一个参数。

    VOLIME  容器内挂载目录

    ONBUILD  创建其他镜像为其他镜像时所执行的操作命令

    创建镜像 : docker  build -t  images/name  /opt/docker/docker_file_dir/

            创建一个stag为 images/name 的镜像。

  • 相关阅读:
    easyui datagrid 让某行复选框置灰不能选
    easyui前台改变datagrid某单元格的值
    javascript Date format(js日期格式化)
    SVN中trunk,branches,tags用法详解
    ecshop后台新功能权限的添加
    jquery创建一个新的节点对象(自定义结构/内容)的好方法
    kafka系列九、kafka事务原理、事务API和使用场景
    kafka系列八、kafka消息重复和丢失的场景及解决方案分析
    kafka系列七、kafka核心配置
    kafka系列六、java管理kafka Topic
  • 原文地址:https://www.cnblogs.com/harveyjie/p/9552501.html
Copyright © 2020-2023  润新知