2017-08-02 10 views
2

nginxで大規模な動的仮想ホストを設定するにはAs seen here ホストマシンとしてdockerを使用する点を除き、dockerのnginxで大規模な動的仮想ホストを設定するには?

私は現在、それをこのようなセットアップがあります。

# default.conf 
server { 
    root /var/www/html/$http_host; 
    server_name $http_host; 
} 

そして、私のDockerfileで

COPY default.conf /etc/nginx/sites-enabled/default.conf 

そして、私はイメージを構築し、それを実行した後:

docker run -d 80:80 -v www/:/var/www/html 

しかし、ときに私を私のホストファイルに新しいドメイン(example.dev)を指定し、www/example.dev/index.htmlを作成します。それはまったく動作しません。

+0

に出力されますか?また、設定とnginxの読み込みですか?既定のサイトを参照できますか? –

+0

@TarunLalwaniええ、ロードされていますが、私はドメインがドッカーにリダイレクトされていません – isethi

+0

最新の答えをチェックし、あなたのために動作するかどうかを確認します。 –

答えて

2

セットアップは正しく、私のシステムでテストした通りに動作します。唯一の問題は、間違ったパスにファイルをコピーしていることです。ドッカーイメージはデフォルトでsites-enabledパスを使用しません。デフォルト設定は、/etc/nginx/conf.dにあるすべてのものをロードします。そのパスにコピーしてすべての作品を休む必要があります

COPY default.conf /etc/nginx/conf.d/default.conf 

ボリュームを正しくマップするようにしてください。テスト中に私は、ドッキングウィンドウのコマンドの下の下

docker run -p 80:80 -v $PWD/www/:/var/www/html -v $PWD/default.conf:/etc/nginx/conf.d/default.conf nginx 

を使用してそれをテストして、コマンドラインで出力

[email protected]:~/test/www$ mkdir dev.tarunlalwani.com 
[email protected]:~/test/www$ cd dev.tarunlalwani.com/ 
[email protected]:~/test/www/dev.tarunlalwani.com$ vim index.html 
[email protected]:~/test/www/dev.tarunlalwani.com$ cat index.html 
<h1>This is a test</h1> 

あなたが得る問題である何ブラウザ

Nginx test output

+0

これはWebルートを変更しません。すべてがまだhtml/index.phpに向けられていて、html/example.com/index.phpには向いていません。 – isethi

+0

更新された回答を確認し、間違っていることを確認してください –

関連する問題