Ruby on rails 在Rails应用程序容器前面使用专用代理容器

Ruby on rails 在Rails应用程序容器前面使用专用代理容器,ruby-on-rails,nginx,docker,docker-compose,Ruby On Rails,Nginx,Docker,Docker Compose,在将Rails应用程序部署到生产环境之前,我正在对其进行对接 我能够创建一个2容器(db+app)系统,现在我正在尝试添加一个代理容器(使用Nginx)在应用程序前面运行,以服务于静态资产 我已经用下面的配置从nginx:1.11-alpine创建了一个基本容器 server { listen *:80; location / { proxy_pass http://app:3000; } } 我现在可以将浏览器指向http://0.0.0.0并获取根页面,但是,静态资产

在将Rails应用程序部署到生产环境之前,我正在对其进行
对接

我能够创建一个2容器(db+app)系统,现在我正在尝试添加一个代理容器(使用Nginx)在应用程序前面运行,以服务于静态资产

我已经用下面的配置从
nginx:1.11-alpine
创建了一个基本容器

server {
  listen *:80;
  location / {
    proxy_pass http://app:3000;
  }
} 
我现在可以将浏览器指向
http://0.0.0.0
并获取根页面,但是,静态资产(显然)没有提供,我不知道如何继续

我是否应该将静态资产从应用程序容器复制到代理容器

如何更新Nginx配置文件

我的docker-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

谢谢。

一个选项可能是通过共享卷装载将
资产
目录从应用程序容器共享到nginx容器,并将nginx配置为服务于这些文件