2016-08-30 9 views
2

イムに奉仕する方法を次のようになり、私のDjangoの環境、(単純化ビット)をcontainerizeするドッカーを使用して:Dockerized nginxのとDjango、静的ファイルに

  1. A nginxの(公式画像)ドッキングウィンドウコンテナ
  2. アンuwsgiとDjangoを使用したUbuntuドッカーコンテナ

Nginxコンテナはuwsgiを正しく処理していますが、静的ファイルを処理する方法が見つかりませんでした。

upstream proceed { 
    server proceed:8000; 
} 

server { 
    listen 80; 
    server_name mydomain.com; 

    location /static { 
     alias /srv/www/proceed/static/; # What to do here? 
    } 

    location/{ 
     uwsgi_pass proceed; 
     include uwsgi_params; 
    } 
} 

質問:いただきました別の容器からの静的ファイルを提供するための最良の方法?容積を含まない溶液が好ましい。

+2

ファイルをコンテナ内で使用できるようにする必要があります。これは、(a)ボリュームとしてマウントするか、(b)それらを新しいイメージに焼くことを意味します。好きなのを選びな。 – larsks

答えて

2

@larsksと同様にshare volumes between containersが必要です。

あなたのジャンゴDockerfileは、ボリュームの定義

FROM ubuntu 
.... 
VOLUME /srv/www/proceed/statiC# there is path to your static 

あなたはnginxのコンテナを実行すると、あなたがvolumes-from引数

docker run nginx --volumes-from django 

そして、正常に動作意志あなたnginxの設定よりを追加必要が含まれてする必要があります。

注!静的コンテンツへのパスはdjangoコンテナとnginxコンテナに同じでなければなりません!

関連する問題