一.安装rvm
sudo apt-get install curl
curl -L https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm
rvm -v
二.安装ruby2.1.2(目前最新,也建议最新)
rvm install 2.1.2
rvm use --default 2.1.2
ruby -v
gem -v
三.替换gem原为taobao
gem source -r https://rubygems.org/
gem source -a https://ruby.taobao.org
四.安装最新版rails(默认最新,建议最新)
gem install rails
rails -v
五.安装nodejs最新版 via ppa
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
node -v
六.安装mysql(我的rails项目使用mysql)
netstat -tap |grep mysql#检查是否已经安装mysql
sudo apt-get install mysql-server mysql-client
sudo /etc/init.d/mysql start|stop|restart|reload|force-reload|status
七.安装sublime text3(编辑器)或者atom(编辑器) via ppa
#sublime text3
sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text-installer
#remove sublime text3
sudo apt-get remove sublime-text-installer
#atom /opt/atom/atom
sudo add-apt-repository ppa:webupd8team/atom
sudo apt-get update
sudo apt-get install atom
八.安装nginx+passenger
#install passenger
#参考:https://www.phusionpassenger.com/documentation/Users%20guide%20Nginx.html#install_on_debian_ubuntu
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 561F9B9CAC40B2F7
sudo apt-get install apt-transport-https ca-certificates
cd /etc/apt/sources.list.d
sudo apt-get install vim
sudo vim passenger.list
### to_add
# Ubuntu 12.04
deb https://oss-binaries.phusionpassenger.com/apt/passenger precise main
###
sudo chown root: /etc/apt/sources.list.d/passenger.list
sudo chmod 600 /etc/apt/sources.list.d/passenger.list
sudo apt-get update
sudo apt-get install nginx-extras passenger
九.配置nginx+passenger
1.编辑/etc/nginx/nginx.conf,将
# passenger_root /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini;
# passenger_ruby /usr/bin/ruby;
改为(取消注释,修改passenger_ruby路径)
passenger_root /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini;#默认即可
passenger_ruby /home/yang/.rvm/wrappers/default/ruby;#注意yang为你的用户名
sudo rm /etc/nginx/sites-enabled/default
sudo touch /etc/nginx/sites-enabled/hackerblog.com.conf
#add to /etc/nginx/sites-enabled/hackerblog.com.conf
###
server {
listen 80 default;
server_name hackerblog.com; # 这里填写你真实域名
root /var/www/hackerblog/public;
passenger_enabled on;
}
###
sudo service nginx restart
十.建立rails项目
rails new hackerblog --skip-bundle -d mysql
#如果遇到------程序“rails”尚未安装
#执行bash --login
cd hackerblog
bundle install
#如果遇到:An error occurred while installing mysql2,ubuntu12.04执行sudo apt-get install libmysql-ruby libmysqlclient-dev
# ubuntu14.04 sudo apt-get install libmysqlclient-dev
#rake db:create
#rake db:drop
#rake db:migrate
#rails s
#http://127.0.0.1:3000/
cp -R /home/yang/dev/ruby/rails/hackerblog /home/yang/www/hackerblog
cd /home/yang/www/hackerblog
RAILS_ENV=production rake db:create db:migrate
#注意部署环境mysql密码不能为空
rake assets:precompile
十一.修改mysql root密码(附加)
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
十三.注意事项
#visit http://127.0.0.1
#如果遇到502,就查看/var/log/nginx/error.log
#如果问题是secret
#则执行 rake secret,并复制secret到config目录下的secrets.yml里面的production位置。
貌似必须要设置routes.rb的root才能正常访问,否则会出错,待验证。
#config/ervironment/production.rb
config.serve_static_assets = true
rails generate controller welcome index
#routs.rb
root 'welcome#index'
#:zh is not a valid locale
class Application < Rails::Application
config.i18n.available_locales = [:"zh-TW", :zh]
config.i18n.default_locale = :"zh-TW"
end
#要使用minimagick,需要安装imagemagick
sudo apt-get install imagemagick
十四.安装php
1.安装php5-mysql
sudo apt-get install mysql-server php5-mysql
2.安装php5-fpm(第一步的时候可能会自动安装)
sudo apt-get install php5-fpm
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com