1.Docker之使用Dockerfile构建Flask镜像(简易版)

1.1.构建Python3环境的镜像

        由于Flask依赖于Python的环境,那我就先构建一个Python镜像,然后在Python镜像的基础上继续构建我所想要的Flask环境。下面是我的Dockerfile文件(比较简单):

##需要依赖的基础镜像,我这里就直接使用最新的ubuntu镜像,注意必须放在开头
FROM ubuntu
##接下来是作者信息,这个是方便别人找你算账
MAINTAINER panleiming 1025624185@qq.com
##设置环境变量
ENV LANG en_US.UTF-8
##设置时区,容器启动的默认时间与北京时间不一致,需要进行设置
RUN ln -s -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
##更新索引
RUN apt-get update
##安装python3和pip3
RUN apt-get install -y python3 &&
        apt-get install -y python3-pip

        以上就是简单的python3的镜像制作,然后我们在当前Dockerfile文件目录使用docker build命令构建我们的镜像:

docker image build -t python3:1.0 .

        应该是没啥问题的,运行完后再使用docker image ls命令会发现镜像中有刚刚构建的python3:1.0镜像啦。

1.2.构建Flask镜像

        构建的Dockerfile如下:

##基础镜像使用刚刚构建的python3:1.0镜像
FROM python3:1.0
##作者信息
MAINTAINER panleiming 1025624185@qq.com
##设置环境变量,因为flask运行要export LC_ALL=C.UTF-8
##export LANG=C.UTF-8,这里我们酒设置到环境变量中
ENV LC_ALL=C.UTF-8
ENV LANG=C.UTF-8
##设置运行的app及运行环境
ENV FLASK_APP=flaskr
ENV FLASK_ENV=development
##安装flask包
RUN pip3 install flask
##创建一个目录用于存放项目
RUN mkdir /opt/flaskr
##设置容器的工作目录
WORKDIR /opt
##设置绑定的目录
VOLUME /opt/flaskr
##暴露80端口
EXPOSE 80
##设置容器启动时就启动服务
ENTRYPOINT ["flask", "run", "-h", "0.0.0.0", "-p", "80"]

        进行镜像构建并启动容器查看是否起作用:

docker run -ti -v /root/docker/flask:/opt/flaskr -p 8080:80 flask:1.0

flask.png

        容器启动成功,我已经预先把我的项目放到宿主机的/root/docker/flask目录下,下面看下能否正常访问:
hello world.png

        简单的flask镜像就构建成功了。一些构建镜像的常用命令在我的日记本中有链接地址,不熟悉的客官可以看下了解下。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容