首页  >  问答  >  正文

docker 怎样同时支持静态内容和动态内容

http://stackoverflow.com/q/25909985/707580
两边都问问,看看哪边用docker的人多

我有一个简单的 python/flask app,部署在container上时是这样的:

/var/www/app/
  appl/
    static/
      ...
    app.py
  wsgi.py

在使用 docker 之前,我都是用 nginx 直接指向静态文件:

location /static {
    alias  /var/www/www.domain.com/appl/static;
}

location / {
    uwsgi_pass unix:///tmp/uwsgi/www.domain.com.sock;
    include uwsgi_params;
}

但是现在静态文件在 container 内部,nginx 看不到。

我能想到 2 种解决方案:

  1. 按和以前一模一样的配置在 docker 里面卡一个 nginx,然后让 host nginx 和 container nginx 通过 8000 端口直连,host nginx 是个纯 proxy

  2. (host)/var/www/www.domain.com/static 挂到 (container)/var/www/static,然后在启动脚本里把静态内容复制过去

更 docker 的方法是什么?

迷茫迷茫2761 天前568

全部回复(1)我来回复

  • 大家讲道理

    大家讲道理2017-04-21 11:17:36

    更docker的方法就是在里面种一个nginx。

    docker的目标是现在写的程序10年后还能运行,换句话说就是全套环境打包。

    回复
    0
  • 取消回复