用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的自定义名称, 名称后面有‘  .’ , 没有‘  .’ 会创建出错
  1. 创建image后可以运行以下命令来临时运行image,用于测试:
sudo docker run -it --rm -p 80:80 -p 27017:27017  cnf10
注意:
-t 是启动终端
-i是允许进行交互
--rm,在容器启动时设置--rm选项,这样在容器退出时就能够自动清理容器内部的文件系统
-p 为需要释放的端口
cnf10为image名称
  1. 直接运行下面代码启动
docker-compose up
阅读量: | 柯西君_BingWong | 2018-10-20