首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

随意替换突出显示的“appname”与其他东西: rails new appname -d postgresql 然后切换到应用程序目录: cd appname 我们花一点间来创建将由Rails应用程序的生产环境使用的...要安装Puma以及任何未完成的依赖项,请运行Bundler: bundle Puma现已安装,但我们需要对其进行配置。 配置Puma 在配置Puma之前,您应该查找服务器具有的CPU核心数。...这会将Puma配置为应用程序的位置,以及其套接字,日志和PID的位置。随意修改文件,或添加您需要的任何其他选项。...,这样我们就可以轻松启动和停止Puma,并确保它在启动启动。...现在,您的应用程序配置为在启动通过Upstart启动。这意味着即使在重新启动服务器后,您的应用程序也会启动。

5.3K10

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

Nginx将用于捕获客户端请求并将其传递给正运行Rails的Puma Web服务器。...我们将使用Capistrano自动执行常见的部署任务,因此每次我们必须将新版本的Rails应用程序部署到服务器,我们都可以通过一些简单的命令来实现。...注意:如果第二个命令失败并显示消息“GPG签名验证失败”,则表示GPG密钥已更改,只需从错误输出中复制命令并运行它以下载签名。然后运行用于RVM安装的curl命令。...git遥控器是否是最新的 管理您应用的日志 在管理Puma工作人员将应用程序预加载到内存中 完成部署后启动(或重新启动)Puma服务器 在发行版中的特定位置打开Puma服务器的套接字 您可以根据需要更改所有选项...这可能需要5-15分钟,具体取决于您的应用使用的Gems数量。在此过程发生,您将看到调试消息。 如果一切顺利,我们现在准备将您的Puma Web服务器连接到Nginx反向代理。

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

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

当我们将gem添加到应用程序的Gemfile,需要运行此bundle install命令。由于安装步骤因操作系统而异,因此这是留给读者的练习。...这会将Puma配置为应用程序的位置,以及其接口,日志和PID的位置。随意修改文件,或添加您需要的任何其他选项。...我们需要创建post-receive git hook,这是在生产服务器收到git push运行的脚本。...这些是每次将主分支推送到生产git remote(appname_production)运行的命令。...当生产远程接收推送,它将执行我们之前设置的post-receivehook脚本。如果正确设置了所有内容,现在应该可以在生产服务器的公共IP地址上使用您的应用程序。

2.5K60

私有化代码仓库Gitlab的落地与应用(一)

刚好在此之前我用Docker搭建过一个Gitlab,但使用了几天,出现了诸多问题,维护起来也比较麻烦,最终决定按照传统方法重新搭建。截至目前,服务已平稳运行数月。...端口被占用 默认的端口号是8080,可以使用netstat -ntpl 或 lsof -i:8080 命令来查看端口占用情况 通过后台运行日志,排查如果是因为端口被占用引起的,可以按照上述修改配置文件方法...,将配置文件中的端口号修改即可,修改后需要按照第4步重新加载配置文件、重启服务。.../目录下,生成的文件名如1633777959_2021_10_09_14.0.6_gitlab_backup.tar,其中14.0.6是当前gitlab的版本号,恢复使用的gitlab必须是同样的版本号...2.新服务器上恢复数据 将备份文件复制到新服务器的/var/opt/backups/目录下,停掉gitlab的puma、sidekiq两个服务,然后执行恢复操作 gitlab-ctl stop puma

1.1K20

搭建和部署GitLab代码托管平台,自己的CICD堡垒

如果你后期想查看ZRAM的使用,可以使用命令:# 显示当前系统上所有zram设备的详细信息,包括设备编号、压缩算法、设备大小、使用的内存等sudo zramctl图片Dcoker准备Docker的部署,...图片图片之后,可以使用docker命令查看日志来观察GitLab容器初始化:sudo docker logs -f gitlab图片图片最后,访问即可:图片简单“装修”配置一下,就可以使用了;比如:为Push...More当然,更多的配置你也可以在配置文件内实现,比如我们使用8822映射了容器内22的SSH端口。这样前台使用SSH模板克隆有点不方便,如何让它显示8822呢?...如果你希望GitLab占用资源少一点,你可以现在线程:# 现在puma的线程数puma['worker_processes'] = 2puma['min_threads'] = 2puma['max_threads...如何迁移服务器迁移服务器,最简单的方法,就是拷贝完整的/dockerData目录;在新的服务器上,重新部署和映射。END好啦,本次的Docker部署GitLab就到这里。

1.9K21

Rails 部署总结

--more--> 准备工作 在开始部署之前有些准备工作需要去完成,这些准备工作其实在每次开始新建服务器后你都要去做。 为了安全起见我一般习惯不使用密码登录服务器而是使用 SSH 的方式。...: $ sudo apt-get update $ sudo apt-get upgrade 现在开发过程中 Git 服务几乎是必不可少的,为了更好的使用它需要对服务器 .ssh 文件夹进行设置: $...puma 设置 接下来我们需要将 puma 配置为生产环境,打开配置文件: $ vim config/puma.rb 将其修改为: # Change to match your CPU core count...Puma,并确保在服务器启动同时启动。...要访问我们之前创建的Tasks controller,在web浏览器里面访问: http://server_public_IP 你会看到和第一次测试同样的页面,不过现在被架设在了nginx和Puma

6.8K50

自制 Web 服务器了解一下

现在,我利用它运行一个Puma Web服务器,上面跑着一个简单的Sinatra应用。 在进一步介绍之前,你也许会想:这有什么实际的用途吗?...当然,Sinatra和Puma只是建议,你甚至可以在手机上运行完整的Rails应用程序。只要别使用默认的Rails开发服务器WEBRick就行,它只有单进程、单线程,因此不适合生产环境。...在安卓上运行: pkg install ruby gem install sinatra puma 安装nginx nginx是Web服务器、反向代理和负载均衡器。...在安卓上运行: pkg install nginx 接下来需要一点小技巧,才能让nginx与Puma相互配合。...运行Hello world! 负载测试 你可以用siege这个HTTP负载测试软件来模拟真实世界中的使用情况。

2.8K40

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

一来,目前线上运行的应用必须以容器方式进行交付运行,我们使用容器的方式注册应用,对外提供服务; 二来,个人倾向并坚持使用容器方案,可以方便后续快速水平扩展;以及最重要的一点,“代码和命令皆有记录”,方便离线的问题排查...考虑到实际运行环境已经升级到 ruby 2.4 ,故这里需要对容器配置文件进行修改,将 BASE_IMAGE=ruby:2.3-alpine 修改为 BASE_IMAGE=ruby:2.4-alpine..." # ------------------------------------------- 还记得之前的容器配置文件中,有一句 su lobsters -c "bundle add puma -...虽然我们在容器镜像构建将 root 切换到 lobsters 用户,运行应用也使用的是该用户,但是说不定这个 2.7.0 版本就是根本不会读取运行用户路径下的软件呢?...在写完这篇文章后,我对本地和服务器上进行了构建过程镜像清理,清理了大概 50 G 左右的过程产物。 --EOF

4.7K00

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

一来,目前线上运行的应用必须以容器方式进行交付运行,我们使用容器的方式注册应用,对外提供服务; 二来,个人倾向并坚持使用容器方案,可以方便后续快速水平扩展;以及最重要的一点,“代码和命令皆有记录”,方便离线的问题排查...考虑到实际运行环境已经升级到 ruby 2.4 ,故这里需要对容器配置文件进行修改,将 BASE_IMAGE=ruby:2.3-alpine 修改为 BASE_IMAGE=ruby:2.4-alpine...第四回合:完成 Ruby 2.4 软件运行环境 在幸运倔强下,这次软件正常运行起来了。 Puma starting in single mode......虽然我们在容器镜像构建将 root 切换到 lobsters 用户,运行应用也使用的是该用户,但是说不定这个 2.7.0 版本就是根本不会读取运行用户路径下的软件呢?...在写完这篇文章后,我对本地和服务器上进行了构建过程镜像清理,清理了大概 50 G 左右的过程产物。 --EOF

7.4K10

rails -help

Active Record 文件 [--skip-active-storage], [--no-skip-active-storage] 跳过 Active Storage 文件 -P, [--skip-puma...], [--no-skip-puma] 跳过Puma相关文件 -C, [--skip-action-cable], [--no-skip-action-cable] 跳过 Action Cable...) 运行时选项: 选项 说明 -f, [--force] 覆盖已存在的文件 -p, [--pretend], [--no-pretend] 运行但不做任何更改 -q, [--quiet], [--...-v, [--version], [--no-version] 显示Rails版本号并退出 描述: 'rails new'命令创建一个带有默认值的新Rails应用程序   你指定的路径上的目录结构和配置...您可以指定每次使用的额外命令行参数 'rails new'在主目录的.railsrc配置文件运行。 请注意,.railsrc文件中指定的参数不会影响 默认值此帮助消息中显示的值。

2.5K30

使用 Mastodon 搭建个人信息平台:调优篇

在后台页面的侧边栏中选择“管理”,就可以看到展示应用当前运行状况的信息面板啦。 Mastodon 默认运行状况 在图片中我们可以看到“服务器配置”中的“全文搜索”目前是关闭着的。...为了让服务正常使用,我们需要在前文中提到的配置文件 .env.production 中添加一些内容: ES_ENABLED=true ES_HOST=es ES_PORT=9200 接着使用 docker-compose...但是在使用的过程中,不出意外,会遇到下面两个警告和错误提示,而导致页面无法显示图片。...解决前端资源使用错误协议 不论你使用上面哪一种方案,在问题解决后,你会发现哪怕页面 meta 信息、接口响应字段中都是 https 协议的主机地址,Mastodon Web 端在渲染界面中图片的,始终会触发两次元素绘制...Web 服务是 Puma,默认启动后,查看日志我们可以看到进程的使用情况: [9] Puma starting in cluster mode... [9] * Puma version: 5.3.2

2.3K11

mysql日志binlog消费初体验

由于记录的只是执行语句,为了这些语句能在slave上正确运行,因此还必须记录每条语句在执行的时候的一些相关信息,以保证所有语句能在slave得到和在master端执行时候相同 的结果。...,alter表等操作,ROW格式会产生大量日志,因此在考虑是否使用ROW格式日志应该跟据应用的实际情况,其所产生的日志量会增加多少,以及带来的IO性能问题。...添加这一行就ok binlog-format=row #选择row模式 server_id=1 #配置mysql replaction需要定义,不能和canal的slaveId重复 在mysql的my.ini配置文件中加上如上配置后重启...:https://github.com/shyiko/mysql-binlog-connector-java 阿里的canal:https://github.com/alibaba/canal 点评的puma...:https://github.com/dianping/puma

2.1K80

storm流式处理框架

最初,用户属性分析是通过每天在云梯上定时运行的MR job来完成的。为了满足实时性的要求,希望能够实时分析用户的行为日志,将最新的用户属性反馈给搜索引擎,能够为用户展现最贴近其当前需求的结果。...利用HTML5提供的performance标准获得可用的指标,并记录日志。Storm集群实时分析日志和入库。使用DRPC聚合成报表,通过历史数据对比等判断规则,触发预警事件。...Puma:Facebook使用puma和Hbase相结合来处理实时数据,使批处理 计算平台具备一定实时能力。 不过这不算是一个开源的产品。只是内部使用。...需要知道Storm不是一个完整的解决方案。使用Storm你需要加入消息队列做数据入口,考虑如何在流中保存状态,考虑怎样将大问题用分布式去解决。解决这些问题的成本可能比增加一个服务器的成本还高。...: sparse submit 没有报错就表示已经提交拓扑到storm上了,打开ui地址,可以看到拓扑一栏里已经显示有wordcount的拓扑在运行

89650

GitLab 14 轻量化运行方案

但是众所周知,GitLab 在 v10 版本之后,不断增加功能,逐渐调整重心为一站式平台,产品趋于面向公司和组织,导致其对于服务器资源的依赖与日俱增,从最初的 1GB 左右内存的资源就能流畅运行,膨胀到了目前至少需要...6~7 个GB内存才能够顺滑运行。...至于 Gitaly ,实测之后,不建议进行调整,一来节约资源非常非常有限,二来 Gitaly 运行数量如果被过分限制会直接影响使用体验,详见下文。...(集群化部署的时候,为了保障体验,我们甚至需要独立部署 Gitaly 服务) # 禁用 PUMA 集群模式 puma['worker_processes'] = 0 puma['min_threads'...,更新到配置文件中,完整配置如下: version: "3" services: gitlab: restart: always image: gitlab/gitlab-ce:

4.6K21

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

Unicorn是一个应用服务器,就像Passenger或者Puma一样,它使您的Rails应用程序能够同时处理请求。...随意替换突出显示的“appname”与其他东西: rails new appname -d postgresql 然后切换到应用程序目录: cd appname 我们花一点间来创建将会在Rails应用程序的生产环境使用的...在您喜欢的文本编辑器中打开应用程序的数据库配置文件。...首先,生成密钥,用于验证签名cookie的完整性: cd ~/appname rake secret 复制生成的密钥,然后使用您喜欢的编辑器打开文件.rbenv-vars。...为此,请运行以下命令: RAILS_ENV=production rake assets:precompile 测试应用 要测试您的应用程序是否有效,您可以运行生产环境,并将其绑定到服务器的公共IP地址

4.2K00

插件使用详解

插件的原理很简单,它自己启动了一个ruby的服务器,用于接收Http请求。然后会把host(IP地址)和header相关的信息添加到event中。 下面就看看这个插件如何使用吧!...port 是http插件中服务器运行的端口号。只要发送到“本机IP”:"该端口号"的数据都可以被http插件接收到。...如果想要使用,再去参考文档吧! 源码初探 阅读插件的源码是为了更好的理解插件的使用,并且在出错的时候知道哪里出现了问题。Logstash的插件往往都有固定的书写格式,因此很容易看到插件的核心代码。...def register require "logstash/util/http_compressed_requests" # 创建Puma服务器 @server = ::Puma...服务器Puma是一款ruby的高性能服务器

2.4K80

GitLab 14 轻量化运行方案

但是众所周知,GitLab 在 v10 版本之后,不断增加功能,逐渐调整重心为一站式平台,产品趋于面向公司和组织,导致其对于服务器资源的依赖与日俱增,从最初的 1GB 左右内存的资源就能流畅运行,膨胀到了目前至少需要...6~7 个GB内存才能够顺滑运行。...至于 Gitaly ,实测之后,不建议进行调整,一来节约资源非常非常有限,二来 Gitaly 运行数量如果被过分限制会直接影响使用体验,详见下文。...(集群化部署的时候,为了保障体验,我们甚至需要独立部署 Gitaly 服务) # 禁用 PUMA 集群模式 puma['worker_processes'] = 0 puma['min_threads'...,更新到配置文件中,完整配置如下: version: "3" services: gitlab: restart: always image: gitlab/gitlab-ce:

2.7K40
领券