首页
学习
活动
专区
圈层
工具
发布

使用Capistrano,Nginx和Puma在Ubuntu 14.04上部署Rails应用程序

我们将使用Capistrano自动执行常见的部署任务,因此每次我们必须将新版本的Rails应用程序部署到服务器时,我们都可以通过一些简单的命令来实现。...当您必须升级Rails应用程序以使用更新的ruby时,这会让生活变得更加轻松。...注意:如果第二个命令失败并显示消息“GPG签名验证失败”,则表示GPG密钥已更改,只需从错误输出中复制命令并运行它以下载签名。然后运行用于RVM安装的curl命令。...--no-rdoc - (跳过RDocs):不安装RDocs,节省空间并加快安装速度 注意:您还可以使用以下-v标志根据您的要求安装特定版本的Rails : deploy@droplet:~$ gem...'capistrano/setup' require 'capistrano/deploy' require 'capistrano/rails' require 'capistrano/bundler

8.3K40

为什么Capistrano被Docker和Kubernetes取代了

我记得在十多年前曾将Capistrano用作远程服务器自动化工具。它会使用SSH按照脚本允许您将更新部署到目标服务器。...如果您需要在新站点上处理部署,除了您自己偏爱的工具之外,拥有一系列工具也很好。您甚至可能不得不在旧堆栈中使用Capistrano。因此,让我们来评估这件古董,看看它有多大的价值。...使用这些定义,Capistrano可以针对特定计算机执行操作。 任务和角色 Capistrano中的基本命令是任务。这些是在部署的不同阶段执行的。...:publishing 发布新版本 deploy:finishing 完成部署,开始清理 deploy:upload 将文件复制到当前部署的版本。...Ruby语言不公平地与Ruby on Rails的流行程度联系在一起;那已经随着Node.js和JavaScript的兴起而衰落。

71410
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    如何在Ubuntu 14.04上使用Unicorn和Nginx部署Rails应用程序

    ): Ruby on Rails, using rbenv PostgreSQL with Rails 我们假设您的用户名为 deploy 。...首先,生成密钥,用于验证签名cookie的完整性: cd ~/appname rake secret 复制生成的密钥,然后使用您喜欢的编辑器打开文件.rbenv-vars。...使用此命令创建一个脚本并打开它进行编辑(如果您愿意,用您的应用程序名称替换appname): sudo vi /etc/init.d/unicorn_ appname 将以下代码块复制并粘贴到其中,并确保使用适当的值替换...您已使用Nginx和Unicorn部署了Ruby在Rails应用程序的生产环境。 如果您希望改进生产Rails应用程序部署,您应该查看我们的如何使用Capistrano自动部署的教程系列。...---- 参考文献:《How To Deploy a Rails App with Unicorn and Nginx on Ubuntu 14.04》

    6.9K00

    如何使用Capistrano自动部署:入门教程

    Ruby编程语言 Ruby是一种通用的(即不是为解决特定问题而创建的),动态编程语言随着Ruby-on-Rails Web应用程序开发框架的发布而大受欢迎。...如果您使用的是CentOS系统或者Windows系统,可以参考腾讯云开发者实验室在 Linux 上部署 Ruby On Rails 环境和windows下搭建Ruby开发环境,腾讯云社区也提供Ruby中文开发者手册...可以修改这些配方以支持与Ruby(或Rails)无关的各种语言特定部署。 您可以将它们视为Capistrano用于执行其操作的脚本。...如果您正在使用其他类型(例如Ubuntu),则会应用相同的逻辑,但建议您查看此处的官方Capistrano文档以进行安装。...] # Initiate Capistrano: cap install cd myapp cap install 创建使用Capistrano进行部署的用户 使用Capistrano

    3.1K20

    DevOps工具介绍连载(6)——Capistrano

    使用 Capistrano 进行自动化部署 最近在折腾这个,弄了好多次都不成功,看了官方文档和很多博客,都没有说清楚,因此,我觉得有必要把它记录下来,以帮助更多像我这样被弄得烦躁的人。...首先是安装,其实 Ubuntu 上面安装 Capistrano 非常简单: gem install capistrano 然后,进入项目目录,运行下面命令生成 Capistrano 的配置文件: cap...lib/ capistrano/ tasks/ 在 config 中存放的的各个环境的配置文件,而我,就是在配置这个的时候产生的问题。...这里都是使用的 ssh key 的方式进行连接。 本地连接远程服务器不通,可以参考 设置_SSH_Key_登录服务器和_Git_服务器 在本地生成两个 Key,把公钥放服务器上,私钥放本地。...这里还有一个坑,如果你在生成密钥文件时指定了文件名的话,那是不能直接使用的,具体如何使用我暂时没弄清楚,所以直接使用默认的文件名 id_rsa 就行啦。

    1.3K20

    Ruby 应用容器封装踩坑记录(Lobsters)

    一来,目前线上运行的应用必须以容器方式进行交付运行,我们使用容器的方式注册应用,对外提供服务; 二来,个人倾向并坚持使用容器方案,可以方便后续快速水平扩展;以及最重要的一点,“代码和命令皆有记录”,方便离线的问题排查...", require: false + gem 'capistrano-rvm', require: false + gem 'capistrano-rails', require: false...额外的小坑:官方镜像路径 我们使用 ruby-v 命令可以清楚看到我们实际使用的版本是 2.4.9p362。...额外的小坑:Ruby 2.7.0 版本下 Rails 启动警告 先说结论,这个问题官方正在解决。...其他 如果你使用云平台的数据库产品,记得对 lobsters 使用的连接账号进行合理的授权,赋予 ALTER 等权限,避免应用启动时报错。

    9.1K10

    Ruby 应用容器封装踩坑记录(Lobsters)

    一来,目前线上运行的应用必须以容器方式进行交付运行,我们使用容器的方式注册应用,对外提供服务; 二来,个人倾向并坚持使用容器方案,可以方便后续快速水平扩展;以及最重要的一点,“代码和命令皆有记录”,方便离线的问题排查...", require: false + gem 'capistrano-rvm', require: false + gem 'capistrano-rails'...额外的小坑:官方镜像路径 我们使用 ruby -v 命令可以清楚看到我们实际使用的版本是 2.4.9p362。...额外的小坑:Ruby 2.7.0 版本下 Rails 启动警告 先说结论,这个问题官方正在解决。...其他 如果你使用云平台的数据库产品,记得对 lobsters 使用的连接账号进行合理的授权,赋予 ALTER 等权限,避免应用启动时报错。

    6.5K00

    RubyMine 2022 Mac(Ruby代码编辑器) 中文版

    在Rails应用程序中快速切换模型,视图和控制器。高级搜索选项跳转到任何类,文件或符号:按模式和文件夹过滤,或使用正则表达式。甚至可以找到任何IDE动作或工具窗口。...结构视图通过使用Structure工具窗口或特殊的弹出窗口,可以在类方法(包括继承的方法)或HTML标记之间轻松切换。使用层次结构窗格查看和搜索类类型,还有超类型和子类型。...3.Ruby工具的使用集成的Rake,Bundler等等运行Rails生成器和服务器,Rake和Bundler任务。使用模型/类/ gem依赖关系图分析项目结构。...内置控制台通过使用集成的Rails,IRB,SSH控制台和本地终端,在不离开IDE的情况下运行脚本和应用程序。...部署工具通过FTP或SFTP配置自动部署,并使用Vagrant,Docker,Capistrano,Chef和/或Puppet轻松管理您的基础架构。

    3.2K10

    JetBrains RubyMine 2022 Mac(Ruby代码编辑器)

    1.智能和简单的编码代码完成为Ruby和Rails,JavaScript和CoffeeScript,ERB和HAML,CSS,Sass和Less等提供智能和语言感知的自动完成功能。...在Rails应用程序中快速切换模型,视图和控制器。高级搜索选项跳转到任何类,文件或符号:按模式和文件夹过滤,或使用正则表达式。甚至可以找到任何IDE动作或工具窗口。...3.Ruby工具的使用集成的Rake,Bundler等等运行Rails生成器和服务器,Rake和Bundler任务。使用模型/类/ gem依赖关系图分析项目结构。...内置控制台通过使用集成的Rails,IRB,SSH控制台和本地终端,在不离开IDE的情况下运行脚本和应用程序。...部署工具通过FTP或SFTP配置自动部署,并使用Vagrant,Docker,Capistrano,Chef和/或Puppet轻松管理您的基础架构。

    3.5K10

    如何在Ubuntu 14.04上使用Puma和Nginx部署Rails应用程序

    本教程将帮助您部署Ruby on Rails应用程序的生产环境,使用PostgreSQL作为数据库,在Ubuntu 14.04上使用Puma和Nginx。...准备 本教程假定您将在部署应用程序的用户上安装了安装了以下软件的Ubuntu 14.04服务器: 使用rbenv安装Ruby on Rails PostgreSQL与Rails 我们假设您的用户名为deploy...如果没有,第一步是创建一个使用PostgreSQL作为其数据库的新Rails应用程序。 此命令将创建一个名为“appname”的新Rails应用程序,该应用程序将使用PostgreSQL作为数据库。...首先,生成密钥,用于验证签名cookie的完整性: cd ~/appname rake secret 复制生成的密钥,然使用您喜欢的编辑器打开该后.rbenv-vars文件。...例如,如果您的部署用户名为“deploy”,则行应如下所示: setuid deploy setgid deploy 保存并退出。

    8.2K10

    如何在Ubuntu 14.04上使用Git Hooks部署Rails应用程序

    介绍 在本教程中,我们将向您展示如何使用Git hooks自动将Rails应用程序的生产环境部署到远程Ubuntu 14.04服务器。...准备 您将需要访问在Ubuntu服务器上具有超级用户权限的非root用户。在我们的教程设置中,我们将使用一个名为deploy的用户。如果要在不输入密码的情况下进行部署,请务必设置SSH密钥。...安装PostgreSQL 大多数生产Rails环境使用PostgreSQL作为数据库,所以现在让我们将它安装在您的服务器上。...准备你的Rails应用程序 在您的开发机器上,很可能是您的本地计算机,我们将准备您要部署的应用程序。 可选:创建Rails应用程序 理想情况下,您已经拥有了要部署的Rails应用程序。...参考文献:《How To Deploy a Rails App with Git Hooks on Ubuntu 14.04》

    4.4K60

    DevOps工具介绍连载(1)

    集中配置管理系统 puppet puppet是一种Linux、Unix、windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件、用户、cron任务、软件包、系统服务等。...puppet把这些系统实体称之为资源,puppet的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。...https://www.jianshu.com/p/97db5cd55d61 Capistrano Capistrano是一种在多台服务器上运行脚本的开源工具,它主要用于部署web应用。...https://www.cnblogs.com/feiffy/p/9327292.html Resque Resque使用Redis创建后台任务,存储进队列,并随后执行。...它是rails下最常用的后台任务管理工具之一,另一个是Delayed Job。两者的主要区别是,Delayed Job使用Active Record存储数据,Resque使用Redis。

    1.4K20

    Rails 容器与配置(1)

    前言 Rails 是使用 Ruby 语言编写的网页程序开发框架 通过集成开发者需要的常用组件,极大的降低了网页程序的开发成本 前面几篇博客中使用 Rails 框架构建了一个具备基本认证功能的简单博客系统...,详细可以参考: Ruby on Rails 基础 Rails MVC 和 CRUD Rails 构建评论功能 当然,不了解也没关系,因为绝大部分开发的细节都不是运维需要关心的,运维更需要关心的是部署...传统的 Ruby on Rails 应用是使用 Capistrano 来进行自动化布署的,其实效率已经很高了,那有没有比它更高效的方式呢?...因为这样可以很方便地进行水平扩展,系统的可扩展性,高弹性因此而变得很容易实现 这里分享一下 Docker 化一个 Rails 应用的操作过程和相关基础,详细可以参考 Docker hub 中的 Rails...OFFICIAL REPOSITORY 和 官方文档 Tip: 当前的 Docker 最新版本为 Docker Version 1.10 ,Rails 最新版本为 Rails 5.0.0.beta3

    72830

    一键实现自动化部署(灰度发布)实践

    2.4 Octopus Deploy Octopus Deploy创建目的是为了.NET应用的自动化部署。你可以在一台服务器安装或在Azure里做成实例。...2.16 XL Deploy XL Deploy 是一个来自XebiaLabs的应用发布自动化工具,支持大量插件和环境,使用无代理架构。...2.19 Capistrano Capistrano 是一个开源部署工具,使用Ruby开发。Capistrano 文档具有脚本语言和“理智的,富有表现力的API。”...3、代码的部署使用tag,但是代码的更新使用软连接来控制,回滚则切换到上一个软连接 4、由于java是编译型语言,我们使用maven来进行编译,所以需要安装maven环境。...5、关于环境配置文件:配置文件为自己手动维护,每次都是删除git仓库拉取下来的配置文件,把对应环境的代码文件复制进编译目录进行编译。 脚本代码大概的步骤如下: #!

    1.9K20

    如何部署Mina:入门教程

    Mina 在Deployment Server上创建部署者用户 4.使用config / deploy.rb 定义服务器 部署应用程序 定义部署任务 使用任务和子任务 5.示例:部署Rails应用程序...生活在没有Rails的世界中:Mina可以做到以上所有,甚至更多,并且对Rails没有任何严重的依赖。使用Mina,您几乎可以部署所有内容。...Mina的deploy.rb脚本实际上是带有一堆分组任务的RAKE文件。一切都是用Ruby编写的,而不需要处理其他类型的配置,您可以不需要熟悉任何你再也不会使用的新东西。...使用config / deploy.rb 接下来,打开由Mina创建的文件deploy.rb,去定义您的部署服务器并设置任务。...要了解更多关于Rails的应用程序,欢迎访问腾讯云+社区学习更多知识。 注意:使用相同的主体,您可以使用Mina部署任何类型的应用程序。

    6.7K40
    领券