在ECS Fargate环境上运行Rails应用程序之前,如何预编译资产?

时间:2019-04-24 16:45:34

标签: ruby-on-rails amazon-web-services docker

我有一个CodePipeline设置,可以跟踪对私有GIT存储库的更新。检测到更改时,将运行CodeBuild任务以将存储库转换为Docker映像并将其推送到ECR。之后,我运行CodeDeploy任务,通过运行rake db:migrate并重新启动任务来更新ECS集群。

到目前为止一切都很好。但是,当我尝试访问Rails应用程序时,看到以下错误:

ActionView::Template::Error GET </> statics#home处理 例外 资产管道中不存在资产“ application.css”。

似乎我需要在某个地方运行rake assets:precompile。我不知道该怎么做,我应该

  1. 在Dockerfile中定义预编译吗?
  2. 在我的CodeBuild脚本中运行命令?
  3. 还有其他事情吗?

预先感谢

1 个答案:

答案 0 :(得分:0)

在Dockerfile中- RUN bundle exec rake asset:precompile