Rails: 为什么 bundle install 被 sassc 2.4.0 冻结

Rails: Why is bundle install frozen up by sassc 2.4.0

我正在尝试使用 Capistrano 部署我的 rails 应用程序,但是,部署过程 (cap production deploy) 一直停滞在以下行:

$HOME/.rbenv/bin/rbenv exec bundle install --path /home/deploy/appname/shared/bundle --jobs 4 --without development test --deployment -- quiet

当我 ssh 进入服务器并 运行 在没有 --quiet 标志的最新版本中使用相同的命令时,我看到大多数 gem 都已安装,但是当它到达

Installing sassc 2.4.0 with native extensions

它冻结了。如果我用 cloud watch 监控 CPU(我使用的是 EC2 实例 运行ning Ubuntu 20.04),我也会看到它出现尖峰。我已经尝试删除所有依赖 sassc 的依赖项,但这已被证明是一个非常令人头疼的问题,而且似乎没有必要。一些依赖 gem 包括我的 CMS(舒适的墨西哥沙发)、webpacker 和一些节点依赖。

我也试过使用

安装sassc

apt-get install sassc

无济于事(它安装了,但捆绑安装仍然冻结)。

有人知道为什么 gem 安装这么麻烦吗?有 workarounds/fixes 吗?顺便说一句,依赖项在我的 macOS Catalina 机器上本地安装并且 运行 正常。

奖金: 这是我 运行 部署脚本时的 CPU 用法:

积分数:

贷方余额:

也许使用免费的 EC2 计划无法安装 sassc?

谢谢。

sassc 版本 2.4.0 和 rails 6. 我将 Gemfile 中的版本更改为 2.1.0 现在它安装速度很快并且不会卡在 docker建造。

使用旧版本的 sass 可以解决问题。我建议在 Gemfile 中将 6 更改为 5.1.0。此文件将位于您的 rails 文件夹中(创建新 rails 时使用的名称)

我认为 Rails 6 出于某种原因与 Sass 6.0.0 的依赖项不兼容。