dockerfile构建flask环境

发布时间:2019-10-18 09:07:17编辑:auto阅读(2430)

    简介

    Dockerfile是一个文本格式的配置文件,用户可以使用Dockerfile快速创建自定义镜像

    指令及说明

    指令 说明
    FROM 指定基础镜像 且必须是第一条指令
    MAINTAINER 指定镜像作者
    RUN 运行指定的命令 默认/bin/sh -c
    CMD 指定容器启动时要执行的命令
    LABEL 设置镜像标签
    ADD 把文件复制到镜像中 类似scp
    COPY 编译时复制本地文件到镜像中
    WORKDIR 设置RUN CMD COPY ADD指令的工作目录 不存在则创建
    ENTRYPOINT 设置容器入口程序
    VOLUME 设置容器的挂载卷
    USER 设置运行RUN CMD ENTRYPOINT的用户名
    ARG 设置编译时加入的参数
    EXPOSE 设置镜像暴露的端口
    ENV 设置容器的环境变量
    ONBUILD 设置镜像的ONBUILD指令
    STOPSIGNAL 设置容器的退出信号量
    HEALTHCHECK 容器监控状况检查命令

    一个简单的例子

    #This is SMS Dockerfile
    #Version 1.0
    #Author: LYW
     
    #基础镜像
    FROM daocloud.io/library/centos
     
    #维护者信息
    MAINTAINER LYW
    
    # 标签
    LABEL version="1.0"
    
    # 安装依赖
    RUN yum -y install  wget gcc gcc-c++ make openssl-devel \
    zlib-devel bzip2-devel ncurses-devel \
    sqlite-devel readline-devel tk-devel \
    gdbm-devel db4-devel libpcap-devel xz-devel svn
    
    # 添加需要下载的资源
    RUN mkdir /usr/local/python3
    ADD http://XXX/software/Python-3.6.1.tgz /usr/local/src
    WORKDIR /usr/local/src/
    RUN tar -zxvf Python-3.6.1.tgz
    WORKDIR /usr/local/src/Python-3.6.1
    
    # 安装python
    RUN ./configure --prefix=/usr/local/python3
    RUN make && make install
    RUN ln -s /usr/local/python3/bin/python3 /usr/bin/python3
    
    # 安装pip包
    RUN /usr/local/python3/bin/pip3 install Flask 
    RUN /usr/local/python3/bin/pip3 install pymysql
     
    #目录挂载
    VOLUME ['/data/sms']
     
    #端口
    EXPOSE 5000
    EXPOSE 22
     
    #声明环境变量
    ENV PATH /usr/local/python3/bin:$PATH
    #
    CMD ["python3 -V"]

    运行

    • 构建镜像
    docker build -t python/sms:v0.1 .
    • 基于镜像启动容器
    docker run -tid --name sms_01 -p 5000:5000 -p 5022:22  python/sms:v0.1 /sbin/init

    参考

    https://www.cnblogs.com/dazho...

关键字