加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Rake资产:在生产中有一个控制台会话打开时,预

发布时间:2020-12-16 20:22:38 所属栏目:百科 来源:网络整理
导读:在我的生产服务器上,托管在数字海洋上,如果有帮助,Ubuntu 12.04,我有RoR 4和耙10.1.1. 当我部署时,我运行rake资产:预编译,我注意到一个奇怪的问题,如果我有一个rails控制台会话打开,当我这样做,我得到以下输出 ~# rake assets:precompile~# Killed 这主要是
在我的生产服务器上,托管在数字海洋上,如果有帮助,Ubuntu 12.04,我有RoR 4和耙10.1.1.

当我部署时,我运行rake资产:预编译,我注意到一个奇怪的问题,如果我有一个rails控制台会话打开,当我这样做,我得到以下输出

~# rake assets:precompile
~# Killed

这主要是烦人的,但是我想要解决的原因是招聘新的开发人员时会出现部署/控制台冲突的噩梦.

谢谢,

布赖恩

解决方法

您的预编译过程可能因为内存不足而被杀死.您可以通过在另一个ssh会话中运行顶部来确认.要解决此问题,请创建一个交换文件,当RAM已满时将使用该交换文件.

在Ubuntu上创建SWAP空间
如果您计划在数字海洋上使用Rails 512MB RAM液滴,则可能需要一些交换空间.具体来说,在编译资产时,您的内存将用尽,导致进程被安静地杀死并阻止成功的部署.

看看你是否有交换文件:

sudo swapon -s

没有显示交换文件?检查你有多少磁盘空间:

df

创建交换文件:

步骤1:分配文件进行交换

sudo fallocate -l 2048m /mnt/swap_file.swap

步骤2:更改权限

sudo chmod 600 /mnt/swap_file.swap

步骤3:格式化交换设备的文件

sudo mkswap /mnt/swap_file.swap

步骤4:启用交换

sudo swapon /mnt/swap_file.swap

步骤5:重新启动时,确保交换已安装.首先,打开fstab

sudo nano /etc/fstab

最后,在fstab中添加条目(只有当它不被自动添加时)

# /etc/fstab
/mnt/swap_file.swap none swap sw 0 0

保存并退出.你完成了交换.现在你的耙子资产:预编译应该完成而不会被杀死.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读