在一般的Linux和Gentoo上维护/安装ruby gems / ruby​​ on rails

我目前正在研究 Ruby / Ruby on Rails作为 Python / Django的替代方案.我的主要问题是,在具有普通dist或Gentoo的Linux上安装Ruby gem和/或Ruby on Rails项目时,最不明确的是什么.

在Gentoo中,开发者倾向于打包宝石.这是通过portage而不是gem安装它们的首选方式.然而,我不知道这是否是正确的方法,因为你总是会丢失重要的项目和他们的依赖项,你要么必须编写自己的ebuild(并不是那么重要)并维护它.在那一点上,我没有看到任何更多的优势,因为一旦我编写了自己的ebuild,我必须密切关注软件包以获得新的开发,因为包装中不会有任何神奇的颠簸. :-)此外,Ruby世界是一个快速移动的目标,并不是所有在dist树中打包的宝石都非常快.

另一方面,直接通过Bundler或直接通过gem包管理器进行安装似乎也有点不稳定.如果您不小心,您可以绕过dists包管理器并拥有两个竞争管理器.例如,dist更新了Ruby 1.9.4并引入了一些特定于dist的特性,并且一些宝石意外中断.然而,他们为自己修补了自己的包装宝石.或者,如果您使用Bundler,项目在依赖项的版本方面往往相当严格,因此,即使可用的安全更新,您也可能无法获得它,因为项目明确指定了一个版本.所以你必须再次手动跳入.

现在,我很感激社区关于正确处理这些事情的方法(TM)以及如何在生产服务器上正确维护Ruby / Ruby on Rails基础和几个项目(包括第三方项目)的意见.

请注意,这不是关于如何部署项目/应用程序.这是关于维护的最佳实践……

解决方法

就最佳实践而言,我建议雇用SysAdmin来执行这些功能并监控您的设备.您不需要全职雇用这样的人,因为有许多系统管理员在合同的基础上每月提供这些服务一定的时间.

如果做不到这一点,我认为这是DevOps组织或单人公司的事情?在这种情况下,我会在这样的设置中质疑Gentoo在分发中的选择.使用预编译的软件包和供应商支持在稳定的发行版上构建应用程序.将您的功能集中在一个版本的平台上,并根据需要定期更新它.不要花时间追逐“快速发展”的语言或平台的最新版本,因为这是最好的低效率和最坏的商业冒险的一个秘诀.

相关文章

文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件。特点:最新、最快、最准确。 用法:...
非交互式添加分区 方法一 添加/deb/sdb 下的分区,其实位置为1到1000M,第二个分区位置为1001至3000M,...
编译安装httpd 1 去官网下载源码包 为避免非法软件,一定要去官网下载http://www.apache.org httpd-2.4...
gdisk用法 gdisk - InteractiveGUIDpartitiontable (GPT) manipulator GPTfdisk (akagdisk) isatext-mo...
1 一定用快捷键 这里简单的说下几个常用的快捷按键。 1.1 移动光标快捷键 Crtl + a 光标回到命令行...
bash shell中测试命令 test命令提供了if-than语句中测试不同条件的途径。如果test命令中列出的条件成立...