Rails应用部署

来源:互联网 发布:java 浏览器下载文件 编辑:程序博客网 时间:2024/06/06 06:53

服务器配置

  • 阿里云ECS, 1G、1CPU
  • 单核环境下,可选的服务器就不多了,再加上Rails5 ActionCable,服务器就选了Puma

Patch 1手动部署

  1. 安装Nginx,下载源代码,略去不提
  2. /etc/nginx/sites-enable/下创建配置文件blog.conf

  1. Gemfile里加上 gem ‘puma’

  2. puma -e production -b unix:///tmp/blog.sock -d

PS

注意Nginx配置里的public文件夹路径问题,之前路径写成了 ~/xxxxx,悲剧了,assets死活404

问题在于启动Nginx是root用户,而项目在xxx用户目录下

Patch 2自动化部署

gem install mina

mina init

编辑生成的deploy.rb,遇到了一下几个坑

  • mina setup命令卡在ssh, 解决方法是set :term_mode, nil
  • bundle无法执行, 因为没有编辑rvm相关的配置
  • 数据库配置为空, 需要手动复制配置文件database.yml和secrets.yml
  • migration,seed 没有执行, mina这样每次替换整个文件夹的部署方式,不能用sqlite,迁移到了mysql
  • assets 404, Nginx里public路径需要改一下

#

如何自动重启puma?

0 0
原创粉丝点击