我是一名铁路开发人员(拥有大约一年的经验)并且我对此感到非常满意,但我发现我对部署或服务器的工作方式缺乏粗略的理解。我熟悉Unicorn或Apache这样的术语,但我不知道他们管理rails实例(?)的概念。
我听说过厨师,我知道它用于部署,但我不知道我从哪里开始。
是否有一本书或一个截屏视频系列可以用来学习这类东西?
(旁注:我有一个我想要制作的项目,有点像模板构建器和Web主机,所以了解如何添加域/子域/管理这类事物是主要的驱动器之一学习,除了自然想要学习之外)。
答案 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
开始,我浪费了太多时间。当您将vagrant
和chef-server
放在一起时,您会得到大量您无法处理的信息。出现了很多洞穴加热,需要写很多东西......最终会浪费40个小时的不间断学习,但却没有达到理想的效果。
如果您需要任何帮助,可以通过freenode irc与我联系。我甚至不希望这个厨师经历我的敌人。
<强>更新强>: 这是很老的评论:)所以只是忽略它。结束使用vagrant + chef,然后是vagrant + ansible,现在使用docker。确切地说是docker + traefik
答案 2 :(得分:1)
不要去任何地方,而是直接去最新的超棒厨师基础系列,在youtube上查看opsode用户(http://www.youtube.com/user/Opscode)。
之后,你可以去irc,docs,观看其他高级的东西(包括berkshelf)。但首先要做的事情。