用docker部署flask gunicorn nginx后续

最近一直在写FLASK+JS的网站,到了终于写好了之后发现 :我不懂部署啊?!

最后研究了一番之后决定用docker来区分开mongodb和FLASK的应用。
其中的FLASK 部署用到了以下文章:

用docker部署flask+gunicorn+nginx
https://www.cnblogs.com/xuanmanstein/p/7692256.html

其实作者写了一大堆东西,很多都是已经写好了,压根直接运行就可以,例如:

原作者是在build镜像的时候把代码全都COPY进去了,我改成只copy  requirements.txt 用于安装python包就可以了。代码之类的我还是喜欢用-v挂载。

其实用-v挂载FLASK 已经写入了docker-compose里面,我看了半天才领会到,以为运行的时候还要写什么命令。
但对于我这种小白来说,看了作者写了一大堆东西最后还是不会运行。
最后其实只需要在目标文件夹下运行下面代码就可以运行了:

docker-compose up

总的来说,具体步骤为:

  1. 先将到github的nginx-gunicorn-flask下载整个文件夹,

  2. 将写好的FLASK放入App这个文件夹中,

  3. 然后在CMD上的目标文件夹nginx-gunicorn-flask(自定义目录名)创建image:

    sudo docker build -t 'cnf10' .
    注意:cnf10为image的自定义名称, 名称后面有‘  .’ , 没有‘  .’ 会创建出错
  4. 创建image后可以运行以下命令来临时运行image,用于测试:
    ```
    sudo docker run -it –rm -p 80:80 -p 27017:27017 cnf10
    注意:

-t 是启动终端
-i是允许进行交互
–rm,在容器启动时设置–rm选项,这样在容器退出时就能够自动清理容器内部的文件系统
-p 为需要释放的端口
cnf10为image名称

5. 直接运行下面代码启动

docker-compose up


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 [email protected]