亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Ruby > 正文

win10下使用virtualbox + vagrant配置ruby開發機環境

2020-10-29 19:34:02
字體:
來源:轉載
供稿:網友

在寫本文前,筆者已經嘗試了多種其他的替代方法,例如wmware虛擬機安裝kylin。然而發現總是還有各種問題。經大佬指點安裝了virtualbox + vagrant。于是發現配置起來如此簡單。接下來筆者將詳細闡述。

 (注:筆者自己的服務器上的配置是centos7.2 + ruby2.3.4 + mariadb + redis,自己的筆記本為win10,另外,很多網上的類似文章都寫于很長時間以前,很多內容現在已經不適用,甚至很多關鍵的環節還不講清楚,導致筆者配置初期踩了很多的坑。所以寫下此文,總結經驗)

配置流程

1、box鏡像的選擇

本文中,筆者由于網站服務器系統為centos7.2,所以理所應當的選擇了centos的鏡像。(鏡像官網,支持搜索配置:https://app.vagrantup.com/boxes/search。 關于vagrant,此文中不再贅述,網上關于vagrant+virtualbox的資料很多,基本配置也非常簡單省事)。

 起初,筆者隨意下載了一個下載量高的centos,結果發現內部配置有很多的問題,主要問題是很多軟件的版本過于老舊且更新很麻煩,需要手動解決很多的依賴(有的甚至還解決不了,于是果斷棄坑)。后來換了一個官方鏡像,于是有了很大的改觀。(安利一下我用的鏡像:https://app.vagrantup.com/centos/boxes/7)

在選擇鏡像的時候要注意以下幾點:

•如沒有十足的把握,請盡量選擇較新且完整版的鏡像(盡量不要Minimal)
•如果網絡條件允許(例如在中國大陸之外)的話,可以直接按照頁面上的方法配置。如果網絡條件不允許或者速度極慢,可以先按照上面init你的vagrant,然后得到box的下載地址,中斷init。然后用迅雷下載此地址到本地再配置,可以大大節省時間。

2、安裝git

作為開發機,git是必不可少的,然而一開始也被git坑了好長時間。
 首先直接命令安裝

yum install git

安裝時務必注意版本,版本最好不要低于1.8(之前另一個系統git1.7,很多網站上的repo無法正常訪問)
 接下來就是配置git的一些全局設置

git config --global user.name "HansBug"git config --global user.email xxx@xxx.comgit config credential.helper 'cache --timeout=7200'

三條設置依次為用戶名,用戶郵箱和記住密碼(本人較懶,不想配置ssh)有效時間(單位秒,例子中為2小時)

3、安裝rvm

作為rails環境的搭建,rvm是很重要的一環。
 首先安裝rvm(如果本機沒有curl或者出現其他依賴問題請先解決)

curl -L get.rvm.io | bash -s stable

安裝完后如果看到如下的提示的話

 * WARNING: You have '~/.profile' file, you might want to load it,  to do that add the following line to '/home/vagrant/.bash_profile':   source ~/.profile

則按照他說的做就好了。

安裝完畢后有一個很重要的操作――將原鏡像地址換掉。原鏡像地址由于某些神秘的原因(你懂得),接下來ruby下載速度奇慢,而且還不穩定。
 于是果斷執行命令

echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db

4、安裝ruby

rvm配置完畢之后,下一步就是安裝ruby(我使用的是2.3.4版本)

rvm install 2.3.4

然后安裝完之后設置為默認版本

rvm use 2.3.4 --default

5、修改gem source

一般來說,ruby安裝完之后,gem也就有了。但是因為一些神秘的原因(你懂得),gem原本的source常常下載速度極慢。
 首先看一下現有的gem source

gem source -l

反饋是

*** CURRENT SOURCES ***https://rubygems.org/

這個是rubygem原有的鏡像,在大陸訪問速度比較慢。我們可以換上ruby-china提供的鏡像。操作如下:

gem source -r https://rubygems.org/gem source -a https://gems.ruby-china.org/

依次是刪除原有鏡像地址和創建新鏡像地址。到此,gem配置完畢

6、安裝rails和bundler

如果之前都配置妥善了的話,這一步其實很簡單
 首先(中間可能會出現部分依賴性問題,可以通過baidu和google自行解決,一般都能找到相關資料)

gem install rails

確認安裝完畢后,運行

gem install bundler

7、安裝mariadb和redis

其實mariadb在centos上的安裝非常簡單,直接 yum -y install mariadb mariadb-server mysql-devel 即可(最后一個要是不安裝的話,等會bundle install時會出現依賴錯誤)。

 然后就可以 sudo service mariadb start來啟動數據庫了,十分方便。(關于數據庫的設置密碼等問題,可以自行百度相關資料,此處不再贅述)

redis的話,在確保EPEL安裝了的情況下,也可以直接yum -y install redis,系統服務也配置好了,非常方便。(EPEL的安裝請看文末問題區2)
注:在正式部署項目之前,請務必按照development的方式將redis和mariadb的相關配置配置好

關于mariadb的基本初始設置,可以參照:http://www.49028c.com/article/108930.htm
關于mariadb的遠程訪問問題,可以參照下面鏈接,寫的很簡潔清晰(不過除了開發機以外的情況下將遠程權限賦予全部ip是很不安全的):http://www.49028c.com/article/72426.htm

8、部署項目

首先在項目目錄下初始化倉庫并添加遠程倉庫(后面寫上你的git地址)

git initgit remote add origin *****************.git

然后
git pull origin master

將項目安置好,然后接下來就是rails項目的一般性流程了

bundle installrails db:migraterails db:seed

(注:若在bundle install的過程中遇到相關依賴性問題的話,可以首先查看錯誤說明,很多錯誤說明中已經告訴了你如何操作,需要安裝什么包。如果沒能解決的話請百度或google)
 最后一步,

rails server -b 0.0.0.0

啟動rails服務器,然后我們就可以直接通過3000端口訪問本機的網站啦!大功告成

問題區

1、vagrant無法與主機共享文件夾

我這邊之前出現過一個問題,將配置文件(Vagrantfile)里面的這行注釋去掉

config.vm.synced_folder "data", "/vagrant_data"

啟用文件夾共享時,出現了錯誤

Vagrant was unable to mount VirtualBox shared folders. This is usuallybecause the filesystem "vboxsf" is not available. This filesystem ismade available via the VirtualBox Guest Additions and kernel module.Please verify that these guest additions are properly installed in theguest. This is not a bug in Vagrant and is usually caused by a faultyVagrant box. For context, the command attempted was:mount -t vboxsf -o uid=1000,gid=1000 vagrant_data /vagrant_dataThe error output from the command was:mount: unknown filesystem type 'vboxsf'

這個問題解決方案已經知道。其實很簡單,就是缺一個插件,裝上就ok

vagrant plugin install vagrant-vbguest

然后reload,問題解決。

2、部分軟件包無法找到

這種情況是由于centos7本身帶的軟件包并不多。所以我們需要安裝EPEL(http://www.49028c.com/article/113316.htm)
 操作如下:

yum -y install epel-releaseyum repolist

依次是安裝epel和刷新軟件包列表。我們可以看到,軟件包數量增加了很多。

3、將虛擬機映射至ip

其實這一步也很簡單,將Vagrantfile里面的這一行注釋去掉即可(同時也請保證局域網內ip地址沒有沖突,如有沖突,請更換一個ip。另,若是沖突的話,一般在vagrant up & reload的過程中會報錯)
config.vm.network "private_network", ip: "192.168.33.10"

然后網站就可以通過192.168.33.10:3000訪問,數據庫可以用192.168.33.10鏈接,甚至也可以用putty通過192.168.33.10的ip地址鏈接,就像連接你的服務器一樣。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲免费视频在线观看| 欧美日韩中文字幕| 国产在线98福利播放视频| 久久久久日韩精品久久久男男| 久久天天躁狠狠躁夜夜爽蜜月| 欧美精品制服第一页| 精品久久久香蕉免费精品视频| 久热爱精品视频线路一| 欧美国产日产韩国视频| 亚洲欧美日韩国产中文专区| 国产精品吴梦梦| 欧美成人午夜免费视在线看片| 欧美资源在线观看| 91老司机在线| 国产亚洲成精品久久| 亚洲成人久久电影| 欧美黑人一级爽快片淫片高清| 日韩在线观看免费| 深夜成人在线观看| 亚洲国产精品电影| 97人洗澡人人免费公开视频碰碰碰| 亚洲护士老师的毛茸茸最新章节| 亚洲成年人在线播放| 亚洲视频电影图片偷拍一区| 国产精品一区二区久久精品| 国产成人免费av| 欧美老女人www| 岛国精品视频在线播放| 国产精品扒开腿做爽爽爽的视频| 欧美日本在线视频中文字字幕| 国产欧美久久一区二区| 久久精品久久久久久国产 免费| 久久久久久伊人| 国产mv免费观看入口亚洲| 亚洲国产成人精品女人久久久| 日韩h在线观看| 精品日韩美女的视频高清| 久久综合五月天| 亚洲另类激情图| 久久久www成人免费精品| 国产精品人成电影在线观看| 亚洲国产精品va在线| 中文字幕日韩在线播放| 欧美高清一级大片| 日韩av一区在线观看| 欧美日韩国产中文字幕| 国产福利精品视频| 久久精品99国产精品酒店日本| 亚洲老头同性xxxxx| 日本精品视频在线播放| 中文字幕亚洲二区| 国产成人aa精品一区在线播放| 亚洲色图第三页| 伊人久久免费视频| 欧美日韩亚洲精品一区二区三区| 国产网站欧美日韩免费精品在线观看| 日韩欧美在线视频日韩欧美在线视频| 亚洲欧美国产日韩天堂区| 国产国语刺激对白av不卡| 国产97在线播放| 亚洲成人久久网| 色噜噜国产精品视频一区二区| 亚洲人成自拍网站| 国产精品va在线播放我和闺蜜| 久久久精品2019中文字幕神马| 最近2019年日本中文免费字幕| xxx成人少妇69| 国产精品成熟老女人| 91精品啪在线观看麻豆免费| 91亚洲午夜在线| 成人精品视频久久久久| 青青草精品毛片| 77777少妇光屁股久久一区| 国产精品∨欧美精品v日韩精品| 亚洲大胆美女视频| 精品福利在线观看| 久久久久亚洲精品| 久久视频免费观看| 国产欧美日韩精品丝袜高跟鞋| 亚州精品天堂中文字幕| 国产精品男人的天堂| 日韩精品中文字幕在线播放| 午夜精品理论片| 国内精品免费午夜毛片| 亚洲精品视频二区| 久久久久久亚洲精品中文字幕| 欧美成人sm免费视频| 国产精品精品一区二区三区午夜版| 国产在线视频不卡| 在线电影av不卡网址| 2018中文字幕一区二区三区| 成人免费xxxxx在线观看| 日本国产欧美一区二区三区| 国产精品毛片a∨一区二区三区|国| 国产一区二区三区在线免费观看| 亚洲人成电影在线观看天堂色| 中文字幕日韩欧美精品在线观看| 亚洲一区二区三区久久| 欧美一区二区大胆人体摄影专业网站| 欧美日韩午夜视频在线观看| 成人激情av在线| 国产精品海角社区在线观看| 国产精品观看在线亚洲人成网| 欧美在线观看网址综合| 精品国产一区二区在线| 久久国产精品电影| 欧美精品免费在线观看| 欧美性猛交99久久久久99按摩| 欧美视频免费在线观看| 清纯唯美亚洲综合| 国产精品欧美日韩| 亚洲精品网址在线观看| 欧美疯狂做受xxxx高潮| 91久久国产综合久久91精品网站| 欧美成人激情在线| 97视频com| 亚洲影院污污.| 欧美一级视频一区二区| 亚洲一区二区三区乱码aⅴ| 国内精品视频一区| 欧美极品美女电影一区| 欧美一区二区三区免费观看| 欧美国产日韩在线| 亚洲欧美激情一区| 国产91在线播放| 中文字幕日韩高清| 欧美日韩xxx| 91久久精品国产91性色| 日韩精品免费综合视频在线播放| 美女久久久久久久| 国产精品久久久久久久9999| 欧美日韩综合视频网址| 久久精品视频导航| 亚洲欧美日韩国产中文专区| 日韩中文有码在线视频| 国产成人拍精品视频午夜网站| 日韩欧美在线中文字幕| 国产精品久久久久久一区二区| 国产日韩欧美另类| 亚洲aⅴ男人的天堂在线观看| 最新69国产成人精品视频免费| 9.1国产丝袜在线观看| 欧美老女人性生活| 久久久久久久久久久91| 国产精品中文字幕在线观看| 亚洲第一av网| 亚洲精品在线视频| 欧美日韩国产黄| 亚洲小视频在线| 国产精品91久久久| 91产国在线观看动作片喷水| 欧美三级欧美成人高清www| 一区二区国产精品视频| 一区二区三区 在线观看视| 欧美成人精品xxx| 亚洲激情在线观看视频免费| 国内精品视频一区| 高跟丝袜欧美一区| 久久亚洲精品网站| 日韩在线免费av| 日日骚久久av| 色综合视频一区中文字幕| 午夜伦理精品一区| 清纯唯美日韩制服另类|