美文网首页
Docker-使用Dockerfile创建flask应用镜像

Docker-使用Dockerfile创建flask应用镜像

作者: fly_tomato | 来源:发表于2020-04-23 15:55 被阅读0次
构建镜像的方式有两种:一种是基于容器制作,另一种就是通过Dockerfile。

Dockerfile是一个Docker镜像的描述文本文件,内部是一条条顺序执行的指令。

今天就记录一下用Dockerfile构建镜像:
以flask应用为例:
在项目同级目录下创建名为Dockerfile的文本文件(首字母大写,无后缀)
一个简单地创建示例:

# 基础镜像
FROM ubuntu:18.04
# 维护者
MAINTAINER xxx@xxx.com
# 安装python环境
RUN apt-get update && apt-get install -y python3.6 python3-pip
# 拷贝项目依赖到镜像中并安装
COPY ./requirements.txt /home/requirements.txt
RUN python3 -m pip install -r /home/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

COPY . /home/app/
# 指定工作目录
WORKDIR /home/app/
# 容器启动命令
CMD ["python3", "run.py"]

然后在服务器该项目目录下执行:
docker build --rm -t flask_app:v1 ./
-t 指定生成的镜像的名字及标签,可以只写名字,./ 指定Dockerfile所在的目录

然后就会按照文件顺序制作镜像,当最后出现:
Successfully built 9034bvf978e5
Successfully tagged flask_app:v1
这时,一个简单地flask镜像就创建好了。

上面提到的只是一些基本配置,至于线上环境,需要配置的远不止这些,例如
配置gunicorn、supervisor等等。更多配置根据实际需求配置。

创建成功就可以运行项目了,注意运行的时候要指定端口映射:
docker run -it -p 0.0.0.0:8000:5000 9034bvf978e5
-p [宿主机ip]:[宿主机端口]:[docker端口]

这里注意宿主机端口一定要添加到安全组允许访问,不然成功运行也访问不了。

成功创建以后就可以将镜像上传到dockerhub了。

相关文章

网友评论

      本文标题:Docker-使用Dockerfile创建flask应用镜像

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