美文网首页
生成Python的docker image

生成Python的docker image

作者: 蒙浩 | 来源:发表于2020-06-11 15:17 被阅读0次

    如果需要生成一个运行python脚本为启动命令的docker镜像,首先,需要将要在centos的基础镜像里安装python,这里以python36为例。注意这里安装时需要加-y参数,否则安装会失败,因为安装python36时,会有互动页面让你选是否安装,加-y之后,那些会话会默认选y,都安装。

    FROM docker.io/centos
    WORKDIR /var/xxxxxxx
    
    COPY hello.py /var/xxxxxxx/
    RUN mkdir templates
    COPY templates/ /var/xxxxxxx/templates/
    COPY run.sh /var/xxxxxxx
    
    RUN yum install -y python36
    RUN chmod +x run.sh \
        && pip3 install flask \
        && pip3 install requests
    
    EXPOSE 5000
    
    ENTRYPOINT  ["./run.sh"]
    

    如果需要拷贝一些文件到镜像中,可以直接使用COPY命令(ADD命令的话会有一个解压缩的过程,所以对于一般文件,建议使用COPY)。对于文件夹的话,COPY命令有个bug,只会拷贝文件夹下的文件,而不会把文件夹拷贝过去,所以这里需要先创建好文件夹,然后再执行拷贝。

    #!/bin/bash
    
    python3 hello.py
    

    对于启动命令,如果直接写python3 hello.py,Entrypoint会报错。可以将py脚本的运行命令放在一个shell脚本中,这样可以通过运行shell脚本的方式完成py脚本的启动。这里要注意run.sh需要可执行的权限。

    相关文章

      网友评论

          本文标题:生成Python的docker image

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