1、配置production环境
部署ruby_on_rails项目到nginx之前,先要使项目在production环境上跑起来。我使用的是默认数据库sqlite3。
在Gemfile中添加:
gem 'yaml_db'
然后进行bundle安装
bundle install rake db:dump //迁移数据库
配置生产环境使用的数据库:在config/database.yml文件添加如下内容:
production: <<: *default database: db/development.sqlite3
然后加载数据库:
rake db:load RAILS_ENV='production'
生成安全密钥:
rake secret
生成一段符号,加到secrets.yml文件里,如:
production: secret_key_base: 52761ca9d6a033907f27619e87c5a642007cd12be1ae2aebd179ebb690610b37ebd55941ff09bf9e5105265280e
修改/config/enviroment/production.rb里的属性,如下,加载CSS等功能样式
config.serve_static_assets = true
最后运行,让工程跑起来
rails s -e production
2、安装passenger、nginx
安装passenger:
sudo gem install passenger
安装nginx到默认安装路径:
sudo passenger-install-nginx-module
在安装过程中会遇到有些包需要手动安装,我们需要使用apt-get进行安装,可能 apt-get安装不上去,提示连接不到源,你需要更改apt-get源文件,具体地址为:/etc/apt/sources.list.d/official-package-repositories.list
安装nginx启动脚本:
cd ~/ git clone git://github.com/jnstq/rails-nginx-passenger-ubuntu.git sudo cp rails-nginx-passenger-ubuntu/nginx/nginx /etc/init.d/nginx sudo chmod +x /etc/init.d/nginx
配置nginx:
以root身份打开nginx的默认安装目录/opt/nginx/conf/nginx.conf,修改为如下:
server { listen 80; //端口号 server_name localhost; rails_env development; #charset koi8-r; #access_log logs/host.access.log main; location / { root /home/rails_projects/huodongtong/public; //rails工程pubilc的路径 passenger_enabled on; }
启动nginx服务:
sudo /etc/init.d/nginx start
停止nginx服务:
sudo /etc/init.d/nginx stop
重启nginx服务:
sudo /etc/init.d/nginx restart
在浏览器上输入localhost(如果不是80端口就要使用localhost:端口号),就可以看到自己的工程项目,别人可通过ip访问你的服务项目
相关推荐
本人学习ruby on rails 的开发和部署过程中的环境搭建的笔记 基本涵盖了ruby开发中用到的所有软件的安装 也给自己留个存档
ansible-rails:使用Ansible部署Ruby on Rails-使用Lets Encrypt,Sidekiq,PostgreSQL,nginx和puma
本教程只适合 Ubuntu Server 用于部署项目到线上,建议使用同样的 Ubuntu 版本,以免遇到一些版本不同带来的问题。 本教程适合新手初次部署 Rails 应用; 本文测试通过环境 Ubuntu 12.04 Server, 服务器安装测试于 ...
README 个人博客的Rails项目 8-): ransack搜索查询 上传图片 上传视频及播放 支持Markdown Server和部署 Unicorn + Capistrano + Nginx puma Docker 项目地址
您可能需要按照以下步骤将 ruby on rails 应用程序部署到 Ubuntu + Nginx + Unicorn 环境。 在这里,我将 RVM 安装为多用户模式。 我使用www-data用户来运行我的应用程序(这是 Ubuntu 上 Apache 和 Nginx 的...
ICMOC ERP Ruby on Rails构建的简单ERP项目要求Ruby 2.6.5 滑轨5.2.4 PostgreSQL 11如何在本地设置项目bundle exec bundlebundle exec rake restore_database --traceon PRODbundle exec rake RAILS_ENV=production ...
您可以注册最方便的日期顶部屏幕新注册画面个人资料图片预览实现登入画面讲师列表画面讲师注册画面讲师信息详细画面我的页面网站网址http://13.112.152.26/ 基本认证用户名admin密码0322版本信息Ruby 2.5.1版Ruby on...
TheRails部署......Applications > Ruby on Rails on Ubuntu 14.04 (Nginx + Unicorn)查看你的邮件 Your new droplet has been created!You can access it using the following credentials:IP Addres
Kubernetes-container-service-GitLab-sample:此代码显示了如何在Kubernetes集群上部署通用的多组件GitLab。 每个组件(NGINX,Ruby on Rails,Redis,PostgreSQL等)都在单独的容器或一组容器中运行
在Ubuntu 14.04 LTS上使用Passenger 5 / Nginx部署Sinatra / Rails 4应用程序的命令列表。 我还在博客上写了一篇文章(针对初学者),详细说明了每个步骤-http: 如果您遇到困难并需要任何帮助,请在该帖子上发表...
Ruby 2.5.1 滑轨5.2.4 哈姆 SCSS JavaScript MySQL jQuery的 Ajax异步通信 AWS EC2,S3, capistrano(自动部署) 功能 登录 登出 登入 最新帖子 修改帖子 目的地信箱 轮廓 编辑个人资料 喜欢 反向计算 日历 ...
Deprec由Mike Bailey于2006年创建,旨在为在Ubuntu服务器上运行Ruby on Rails Web应用程序创建环境。 从那时起,它的用途已扩展到安装Xen虚拟化,邮件,监视,高可用性IP故障转移和其他服务。 这些任务在工作站的...
系统设计完成后,通过Ruby On Rails框架生成的Web应用打印容器IP地址的方式验证集群是否正常工作。实验结果表明,通过Docker容器部署Web集群系统开销小,能有效的满足Web集群的部署和扩容需求。
部署目的地AWS(EC2)使用的技术/版本信息Ruby 2.6.5 Ruby on Rails 5.2.3 PostgreSQLGoogleMaps Javascript API GoogleMaps地理编码API Nginx(Web服务器) 独角兽(应用程序服务器) capistrano(自动部署) AWS...