https://github.com/StandardNotes
1.首先運(yùn)行
sudo yum update
2.安裝RVM (用來(lái)管理ruby版本)(非root下安裝)
gpg --keyserver hkp://keys.gnupg.net--recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
\curl -sSL https://get.rvm.io | bash -sstable
3.執(zhí)行:source /home/XXXXX/.rvm/archives/rvm-1.29.7/scripts/rvm XXX要改成自己的文件名稱
注:第一個(gè).rvm后面的路徑可以隨著時(shí)間以及版本的改動(dòng)可能不一樣 但最后的”scripts/rvm”是不變的。以找到它們后的全路徑為準(zhǔn)。
4.安裝Ruby
rvm install ruby
這里要注意在執(zhí)行上面語(yǔ)句之前在/home/XXX/.rvm/archives/rvm-1.29.7目錄下(以你實(shí)際目錄為準(zhǔn))創(chuàng)建archives畔况、scr腻惠、rubies 3個(gè)文件夾弟孟。并且在http://ftp.ruby-lang.org/pub/ruby/2.6/下載最新版本ruby(此刻最新版本為ruby-2.6.0.tar.bz2,別下預(yù)覽版等) ,放到archives下面扎酷,這樣執(zhí)行rvm install ruby會(huì)變成本地下載,不然控制臺(tái)下載實(shí)在太慢遏匆。如果執(zhí)行過(guò)程中有出現(xiàn)不存在的文件夾錯(cuò)誤法挨,按照缺失的文件名創(chuàng)建就好。注意權(quán)限最好都設(shè)置成777.
安裝成功后一定要執(zhí)行下面的語(yǔ)句不然后續(xù)很多命令執(zhí)行會(huì)出現(xiàn):未找到命令
rvm use 2.6.0 切換ruby版本
rvm use 2.6.0 --default 設(shè)置ruby默認(rèn)版本
(以上命令二選一)
-------------------按照你現(xiàn)在下載的最新版本替換2.6.0---------------------------------------------------------
5.安裝Bundler:
gem install bundler --no-ri --no-rdoc
如何執(zhí)行出錯(cuò)可以去掉--no-ri --no-rdoc
6.安裝mysql-devel
sudo yum install mysql-devel
安裝MySQL:
sudo yum install mysql56-server
sudo service mysqld start
sudo mysql_secure_installation
sudo chkconfig mysqld on
------上面是復(fù)制官方教程的,如果你之前已經(jīng)安裝過(guò)Mariadb/ mysql就不用管了-----
7. 創(chuàng)建standard_file:
mysql -u root -p
create database standard_file;
quit;
8.安裝Passenger:
sudo yum install rubygems
gem install rubygems-update --no-rdoc--no-ri
update_rubygems
geminstall passenger --no-rdoc --no-ri
9.去除系統(tǒng)自帶或原先安裝的 Nginx(等下會(huì)安裝passenger-install-nginx-module來(lái)替代)
sudo yum remove nginx
sudo rm -rf /etc/nginx
10.配置Passenger:
sudo chmod o+x "/home/XXXX"http://這一步我是沒(méi)做
sudo yum install libcurl-devel
rvmsudo passenger-install-nginx-module
rvmsudo passenger-config validate-install
如果安裝有未找到命令的提示把rvmsudo去掉直接輸入passenger-install-nginx-module帝蒿。
安裝過(guò)程會(huì)有提示選擇選1是完全安裝建議選1惫企,還有個(gè)是選擇ruby。安裝后目錄變成
/opt/nginx陵叽。
11.安裝 Git:
sudo yum install git
--------------已經(jīng)有了略過(guò)---------------------------------------
--------------------以下為一個(gè)開(kāi)源的證書(shū)狞尔,如果自己有證書(shū)的可以忽略第12步驟------------------------
12.Set upHTTPS/SSL for your server (free using LetsEncrypt) (required if using thesecure client onhttps://app.standardnotes.org):
sudo chown XXXXX /opt //XXXX為你想要賦予這個(gè)文件夾用戶權(quán)限組一般是你home文件下面的那個(gè)用戶組名
cd /opt
git clonehttps://github.com/letsencrypt/letsencrypt
cd letsencrypt
Run the setup wizard:
./letsencrypt-auto certonly --standalone --debug
-----這個(gè)需要自己編譯如果編譯出現(xiàn)各種問(wèn)題就略過(guò)吧反正不影響后面的步驟,以后有空再折騰
成功編譯后會(huì)在這個(gè)位置有個(gè)證書(shū)/etc/letsencrypt/live/domain.com/fullchain.pem
domain.com是你在編譯的時(shí)候按提示輸入的域名巩掺。
13. Nginx:
編譯nginx.conf
sudo vim /opt/nginx/conf/nginx.conf
添加如下配置
server {
listen 443 ssldefault_server;
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;// 改成自己證書(shū)路徑
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem; //改成自己的證書(shū)路徑
server_name domain.com; //這個(gè)改成自己的域名**
passenger_enabled on; // 這個(gè)一定要放
passenger_app_env production;
root /home/ec2-user/ruby-server/public; // 改成自己實(shí)際存放的路徑
}
注意如果之前有nextcloud的話 這里443可以改成你自己需要的端口偏序。
14. 下載ruby-server:
cd ~
git clone https://github.com/standardfile/ruby-server.git
cd ruby-server
-----------------------可以直接去作者的github下載并解壓到home/chenkaisi/ ruby-server/public 這個(gè)位置可以自己改---------------
這個(gè)樣子。當(dāng)然你可以改成自己喜歡的路徑胖替。
root /home/chenkaisi/ruby-server/public/public;
注意如果這里有2個(gè)public 不要搞錯(cuò)了研儒。如果你是你自己的目錄就是
XXX/XXX/XXX/public; 最后一個(gè)publicb不要丟了,
路徑最后是定位到public里面的,少了這個(gè)public 打開(kāi)域名會(huì)是403 錯(cuò)誤独令。
public 里面的內(nèi)容端朵。
15.安裝程序:
bundle install
bower install
rails assets:precompile
bower如果是未知命令需要自己安裝
1****、在CentOS上安裝bower工具燃箭,需要先安裝nodejs冲呢,和npm工具。
yum install nodejs
yum install npm
2****招狸、安裝好node和npm后敬拓,使用nmp安裝bower工具:
npm install -g bower
-g表示全局安裝
16.在
這個(gè)目錄下面
vim .env
Insert:
RAILS_ENV=production
SECRET_KEY_BASE=use "bundle exec rake secret"
(注意命令行輸入bundle exec rake secret 生成的加密串放到上面等號(hào)后面)
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=standard_file
DB_USERNAME=root
DB_PASSWORD= 如果有密碼自己輸進(jìn)去
17.Setup database:
rails db:migrate //這一步是連接數(shù)據(jù)庫(kù) 如果DB_PASSWORD= 這里密碼錯(cuò)誤會(huì)無(wú)法連接
· 運(yùn)行服務(wù):
rails s
現(xiàn)在打開(kāi)網(wǎng)頁(yè)試下有無(wú)出現(xiàn)
出現(xiàn)這個(gè)說(shuō)明成功了。這個(gè)必須APP登錄才行裙戏,網(wǎng)頁(yè)無(wú)法使用乘凸。
----------------------------------------備注-----------------------------------------------------
開(kāi)啟命令: sudo /opt/nginx/sbin/nginx //安裝完后開(kāi)啟服務(wù)
重載配置:sudo /opt/nginx/sbin/nginx -s reload //每次修改nginx.conf需要執(zhí)行這個(gè)命令來(lái)生效。