首页 > 解决方案 > 如何在 AWS 上部署 Rails webpack_dev_server Docker 服务?

问题描述

我有一个简单的 Rails/React 应用程序,它与 Docker 一起使用 3 个服务:

'database' for postgres
'web' for Rails 
'webpack_dev_server' for react 

在 AWS 我创建了:

* built a custom image for nginx,
* set s3 to hold ecs configs.
* a production cluster, 
* private repositories for the 'web' and nginx, tagged both images and pushed to the repositories
* create 4 ec2 instances, 2 for the web and 2 for react 

现在我已准备好创建任务定义,但我不确定如何处理 webpack_dev_server (React)。

我们可以使用与 web 相同的 dockerfile 构建图像吗?对于任务定义,它也应该看起来像 Web 吗?

这是有效的 docker-compose.yml 文件。

version: '3'

services:

  web:
    build: .
    ports:
      - "3000:3000"
    volumes:
      - .:/usr/src/app
      - gem_cache:/gems
    env_file:
      - .env/development/database
      - .env/development/web
    environment:
      - WEBPACKER_DEV_SERVER_HOST=webpack_dev_server
      - DOCKERIZED=true

  webpack_dev_server:
    build: .
    command: ./bin/webpack-dev-server
    ports:
      - 3035:3035
    volumes:
      - .:/usr/src/app
      - gem_cache:/gems
    env_file:
      - .env/development/web
      - .env/development/database
    environment: 
      - WEBPACK_DEV_SERVER=0.0.0.0

  database:
    image: postgres
    env_file:
      - .env/development/database
    volumes:
      - db_data:/var/lib/postgresql/data

volumes:
  db_data:
  gem_cache:

标签: ruby-on-railsreactjsamazon-web-servicesdockerwebpack-dev-server

解决方案


推荐阅读