我正在使用 Capistrano 将我的应用程序部署到 Amazon EC2,我只看到错误消息
No space left on device
同时部署过程。我不知道我会在 Amazon EC2 上存储除应用程序本身之外的任何内容。所有文件都存储在 Amazon S3 上。
如何处理这个问题?
编辑:
df -h
的输出:
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.9G 7.4G 99M 99% /
udev 288M 8.0K 288M 1% /dev
tmpfs 119M 180K 118M 1% /run
none 5.0M 0 5.0M 0% /run/lock
none 296M 0 296M 0% /run/shm
谢谢
最佳答案
Capistrano 默认情况下不会删除旧版本。
我建议将此添加到您的config/deploy.rb
:
set :keep_releases, 5
after "deploy:restart", "deploy:cleanup"
这告诉 Capistrano 只保留最后 5 个版本(如果您需要回滚,这可能很重要)并在新版本部署成功时删除旧版本。
或者您可以通过调用手动删除旧版本:
cap deploy:cleanup -s keep_releases=5
关于ruby-on-rails - Rails 部署到 Amazon EC2 - 设备上没有剩余空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19568057/