2017-01-27 3 views
0

Railsアプリをプロダクションに導入する前に、dockerizingの処理中です。Railsアプリケーションコンテナの前で専用のプロキシコンテナを使用する

2つのコンテナ(db + app)システムを作成できましたが、静的アセットを提供するためにアプリケーションの前で実行するプロキシコンテナ(Nginx)を追加しようとしています。私は今http://0.0.0.0に自分のブラウザをポイントし、ルートページを取得することができるよ

server { 
    listen *:80; 
    location/{ 
    proxy_pass http://app:3000; 
    } 
} 

以下の設定でnginx:1.11-alpineから始まる基本的なコンテナを作成している

は、しかし、静的な資産は、(明らかに)ではありません私はどのように進むべきかわかりません。

スタティックアセットをアプリコンテナからプロキシコンテナにコピーする必要がありますか?

Nginx設定ファイルはどのように更新する必要がありますか?

マイドッキングウィンドウ-compose.ymlは

version: '2' 

volumes: 
    postgres-data: 
    driver: local 

services: 
... 
    app: 
    build: . 
    command: bin/rails server -b 0.0.0.0 
    ports: 
     - 3000:3000 
    links: 
     - postgres:db 
    depends_on: 
     - postgres 
    proxy: 
    image: nginx:1.11-alpine 
    volumes: 
     - ./default.conf:/etc/nginx/conf.d/default.conf 
    command: nginx -g 'daemon off;' 
    ports: 
     - 80:80 
     - 443:443 
    links: 
     - app 
    depends_on: 
     - app 

おかげのように見えます。

答えて

0

1つのオプションは、共有ボリュームマウントによって、アプリケーションコンテナからnginxコンテナにassetsディレクトリを共有し、それらのファイルを提供するようにnginxを設定することです。

関連する問題