管理服务器/部署需要学习什么?

时间:2013-11-19 08:02:24

标签: ruby-on-rails deployment chef unicorn

我是一名铁路开发人员(拥有大约一年的经验)并且我对此感到非常满意,但我发现我对部署或服务器的工作方式缺乏粗略的理解。我熟悉Unicorn或Apache这样的术语,但我不知道他们管理rails实例(?)的概念。

我听说过厨师,我知道它用于部署,但我不知道我从哪里开始。

是否有一本书或一个截屏视频系列可以用来学习这类东西?

(旁注:我有一个我想要制作的项目,有点像模板构建器和Web主机,所以了解如何添加域/子域/管理这类事物是主要的驱动器之一学习,除了自然想要学习之外)。

3 个答案:

答案 0 :(得分:1)

在处理远程(甚至本地)部署时,我发现最佳解决方案是使用capistrano。您可以在their website找到所需的所有信息。

您可以从Github开始阅读长README,然后从here开始切换到更详细的信息。

在部署Rails应用程序时,通常像Apache或nginx这样的服务器充当应用程序本地服务器的路由器。例如。为已部署的应用程序启动thin服务器,该服务器在1234端口上应答并配置Apache将所有对远程地址的调用重定向到localhost:1234的本地服务器。

Capistrano将通过配置文件中的配置启动/重启/停止本地Rails服务器,这样您就可以完全控制它。

希望这会有所帮助。您可以在线查找有关capistrano以及与各种http服务器和rails服务器集成的大量信息。

EG。一个好的起点可以由Ryan Bates this screencast制作,但是要小心!这是针对capistrano的旧2.x版本。

答案 1 :(得分:1)

我有很多事要说清楚。我在厨师工作了大约一个月,我花了很多时间来了解它是如何工作的。我说官方文档只是一场灾难。他们把所有东西放在一个地方,虽然你不需要在乞讨中知道它。我只能为你提供一些资源:http://learnchef.getharvest.com/这是我发现的最好的介绍。所有这些官方学习链接对我来说都没有用。

我真的建议远离Vagrant一段时间,只需在DigitalOcean云上购买5 $ vps并尝试使用本手册:http://adamcod.es/2013/06/04/deploy-a-basic-lamp-stack-digital-ocean-chef-solo.html

chef-solo开始,而不是chef-server,然后尝试knife-solo。使用berkshelf虽然在官方文档中很少提及,但因为chef无法处理食谱依赖,尽管它可以下载食谱。然后慢慢开始查看我如何自动化chef-server安装:http://github.com/holms/chef-starter这将为您提供一个想法,为chef-server设置采取哪些步骤,以及如何使用{{1 }}

毕竟,请尝试knife,因为它提供从桌面计算机上运行所有内容。我从vagrant开始,我浪费了太多时间。当您将vagrantchef-server放在一起时,您会得到大量您无法处理的信息。出现了很多洞穴加热,需要写很多东西......最终会浪费40个小时的不间断学习,但却没有达到理想的效果。

如果您需要任何帮助,可以通过freenode irc与我联系。我甚至不希望这个厨师经历我的敌人。

<强>更新: 这是很老的评论:)所以只是忽略它。结束使用vagrant + chef,然后是vagrant + ansible,现在使用docker。确切地说是docker + traefik

答案 2 :(得分:1)

不要去任何地方,而是直接去最新的超棒厨师基础系列,在youtube上查看opsode用户(http://www.youtube.com/user/Opscode)。

第一集: http://www.youtube.com/watch?v=yh9osPQA_-k

之后,你可以去irc,docs,观看其他高级的东西(包括berkshelf)。但首先要做的事情。