【问题标题】:What do I need to learn to manage a server/deploy? [closed]我需要学习什么来管理服务器/部署? [关闭]
【发布时间】:2013-11-19 08:02:24
【问题描述】:

我是一名 Rails 开发人员(有大约一年的经验),我对它感到很自在,但我发现我什至对部署或服务器的工作方式缺乏一个粗略的了解。我熟悉 Unicorn 或 Apache 之类的术语,但除了它们管理 rails 实例(?)的概念之外,我知道的不多。

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

是否有书籍或截屏系列对学习这类事情有用?

(旁注:我有一个我想做的项目,它将像模板构建器和网络主机一样运行,因此了解如何添加域/子域/管理这类事情是主要驱动力之一学习,而不是自然想学习)。

【问题讨论】:

    标签: ruby-on-rails deployment chef-infra unicorn


    【解决方案1】:

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

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

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

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

    希望这会有所帮助。你可以在网上找到很多关于capistrano 以及与各种http 服务器和rails 服务器集成的信息。

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

    【讨论】:

    • 您好,使用 Capistrano 是否依赖于 Ruby 知识?我已经开始在选择 Capistrano 的环境中工作,但我来自 PHP 背景。在 Capistrano 技能的最后期限,所以想知道你是否有任何关于如何去做的建议?谢谢。
    • 您无需对 Ruby 语言了解太多即可熟练使用 Capistrano。您可以按照主要示例进行操作,我认为您会没事的。顺便说一句,Ruby 是一门非常自然的语言,非常容易学习(我也是 PHP 出身,很快就习惯了)。
    【解决方案2】:

    别无所求,直接观看最新的超棒厨师基础系列,请在 youtube 上查看 opsode 用户 (http://www.youtube.com/user/Opscode)。

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

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

    【讨论】:

      【解决方案3】:

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

      我真的建议暂时远离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 不能处理cookbook 依赖,尽管它可以下载cookbook。然后慢慢开始看看我是如何自动化chef-server 安装的:http://github.com/holms/chef-starter 这会给你一个想法,chef-server 设置需要采取哪些步骤,以及如何使用knife 部署东西。

      毕竟,试试vagrant,因为它提供了从您的台式机运行所有内容。我从vagrant 开始,浪费了太多时间。当您将chef-servervagrant 放在一起时,您会得到大量无法处理的信息。出现了很多洞穴热潮,有很多东西要写……你最终浪费了 40 个小时的不间断学习,却没有达到你想要的结果。

      如果您需要任何帮助,可以在 freenode irc 上与我联系。即使是我的敌人,我也不希望这种厨师体验。

      更新: 这是很老的评论:) 所以请忽略它。最终使用 vagrant+chef,然后是 vagrant+ansible,现在使用 docker。确切地说是docker+traefik

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-10-30
        • 2021-10-14
        • 2011-04-01
        • 1970-01-01
        • 2023-03-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多