docker - Rails 无法在生产环境中正确加载资产
问题描述
我正在尝试将我的应用程序部署到 Digital Ocean Docker droplet。
在开发环境中,所有样式都正确加载,但是当我上传到生产环境时却没有。请参阅下面的屏幕
我在用着:
- 导轨 5.2
- 纱
- 码头工人
- 码头工人撰写
我忘记了什么?
我已经在生产中运行的命令:
docker-compose run app bundle exec rails secret
docker-compose run app bundle exec rails assets:precompile RAILS_ENV=production
docker-compose run app bundle exec rails db:create db:migrate db:seed RAILS_ENV=production
docker-compose run app yarn install RAILS_ENV=production
docker-compose run app yarn install
解决方案
这些docker-compose run
命令中的每一个都在一个新容器中工作。这行不通。
有几种方法可以解决这个问题,其中之一是编译您的资产并在 docker 入口点中进行所有准备工作。
推荐阅读
- java - java Servlets加2个数
- api - Skype for Business Online 管理 API
- ocaml - 找不到记录字段注释
- html - 如何将所有星级评分放在同一行?
- android - 使用 SurfaceView 中的 ByteBuffer 时如何在 android ML-kit 中暂停条形码扫描
- c# - StoreRequestHelper.SendRequestAsync() 的 ApiInformation 检查
- windows - 如何手动修复 Qt PATH:致命错误 RC1106:无效选项:-ologo,LNK1327 / LNK1158:运行 rc.exe 期间出现致命错误
- git - 除了 core.hooksPath 全局钩子,如何运行本地 Git 项目钩子?
- java - 使用线程锁定系统的奇数偶数
- reactjs - React Native 在升级到 0.56 版本后崩溃。可能的通天塔问题?