Windows 10 安裝 Ruby + Rails + Node.js + Git + postgresql

被端走的小菜
13 min readOct 13, 2019

--

本文章同步發表於小菜的 Blog https://riverye.com/

之後以個人部落格做更新,這就不再更新囉~~

一口氣將常用的軟體建置起來
包含 Ubuntu、Ruby、rvm、Rails、Node.js、npm、Git、postgresql…等
實用度滿分的大補帖~~

環境介紹

環境介紹

作業系統環境:
作業系統:Windows 10 x64
系統版本:1903 (OS 組建 18362.418)

安裝 Ubuntu

為何要先安裝 Ubuntu ?
因為許多 code 軟體在 Windows 上支援度很低甚至不支援
在 Windows 上安裝 Ubuntu 子系統來操作算是比較方便了
(還是比不過 Mac 方便…

接下來開始一連串安裝教學:

Windows 10 內建「Microsoft Store」,透過 Microsoft Store 安裝 Ubuntu 18.04 LTS

接著開啟 Ubuntu,出現以下的錯誤,用管理者權限開啟「Windows PowerShell」

開啟「Windows PowerSeell」,輸入

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

並重新開機,再次開啟 Ubuntu 即可正常使用。

第一次開啟 Ubuntu 需要跑幾分鐘,接著輸入自訂義的帳號及密碼。

安裝 Ruby

在 Ubuntu (以下簡稱「終端機 (Terminal)」) 中輸入如下:

$ sudo apt-get update
$ sudo apt-get install ruby
# 代表註解,不用輸入
# $ 代表這段指令要在 Terminal 輸入, $ 本身不用輸入

確認 Ruby 是否安裝及版本查詢

$ ruby -v
# ruby 2.5.1p57 (2018-03-29 revision 63029 [x86_64-linux-gnu])
$ ruby --version
# 與上面指令效果一樣,擇一使用即可

安裝 rvm

依序於 Terminal 輸入如下:

$ \curl -sSL https://get.rvm.io | bash -s stable
$ gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
$ \curl -sSL https://get.rvm.io | bash -s stable

# 安裝後,Ubuntu 要重開

rvm 版本查詢

$ rvm -v# rvm 1.29.9 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

列出目前所有可安裝的清單

$ rvm list known

安裝 Ruby 2.6.3 版本

$ rvm install 2.6.3

版本確認

$ ruby -v# ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux]

安裝 Rails

$ gem install rails

上述指令會安裝目前最新版本 Rails (寫文章時最新版本為 Rails 6.0.0)

安裝特定版本 Rails

$ gem install rails -v 5.2.3

# 以 Rails 5.2.3 版本為例

建立 Rails 專案

建立 Rails 6.0.0 專案

$ rails new your_project_name

安裝 Node.js

以安裝 Node.js 12.x 版本為例

$ sudo apt update
$ sudo apt install build-essential apt-transport-https lsb-release ca-certificates curl
$ curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -

安裝 Node.js 和 npm

$ sudo apt install nodejs

版本查詢

$ node -v    # v12.11.1
$ npm -v # v6.11.3

參考:
How To Install Node.Js 10 / 11 / 12 On Ubuntu 16.04 | 18.04 Via APT And SNAP

裝好 Node.js 後,回到 Rails 專案繼續下一步
接著執行 rails server

$ rails serever
$ rails s
# 上述兩個指令意思一樣

會發現依然噴許多錯誤訊息

錯誤訊息中貼心提醒缺少 webpacker,由於 webpacker 需要 yarn
因此先安裝 yran 後再裝 webpacker
依序輸入:

$ rails webpacker:install
$ curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
$ echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
$ sudo apt-get update && sudo apt-get install yarn
$ yarn --version
$ rails webpacker:install

成功開啟的畫面如下:

建立特定版本 Rails 專案

$ rails _5.2.3_ new your_project_name

# 以 rails 5.2.3 版本為例

接著執行 Rails 專案

$ rails server
$ rails s

# 上述兩個指令意思一樣

成功開啟的畫面如下:

參考:
Yarn Docs

安裝 Git

下載連結: https://git-scm.com/download/win

下載後,執行,無腦安裝法,下一步直到安裝好為止。

輸入

$ git version

確認安裝版本即大功告成

Ubuntu 上 Git 版本更新

Ubuntu 很貼心內建 Git v2.17.1 版本,覺得版本老舊更新如下:

  1. 先更新本地端索引:
$ sudo apt update
$ sudo apt install make libssl-dev libghc-zlib-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip

2. 到 Git 的 GitHub 上挑選需要更新的版本

3. 先移到暫存區

cd /tmp

4. 使用 wget 命令安裝複製的 zip 文件鏈接。我們將為文件指定一個新名稱:git.zip

$ wget https://github.com/git/git/archive/v2.23.0.zip -O git.zip

# 以 Git 2.23.0 版本為例

5. 解壓縮下載的文件,並通過輸入以下內容進入目錄

$ unzip git.zip
$ cd git-*

6. 輸入以下兩個指令來製作軟體並進行安裝

$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install

# 安裝完後,Ubuntu 要重開

7. 安裝完成後,確認 Git 版本

$ git --version

# git version 2.23.0

參考:
How To Install Git on Ubuntu 18.04

安裝 postgresql

Rails 內建資料庫 SQLite 練習上很方便,但實務完全不會用
(詳細原因自行 Google)
因此我們要手動安裝 postgresql 資料庫,以備需要時可以使用
至於如何更換 Rails 專案內資料庫,有機會再寫一篇介紹

$ sudo apt-get install wget ca-certificates
$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
$ sudo apt-get update
$ sudo apt-get install postgresql postgresql-contrib

版本查詢

$ psql --version

# psql (PostgreSQL) 11.5 (Ubuntu 11.5-3.pgdg18.04+1)

接下來會比較繁瑣,建議先看下方圖片並瞭解後,再動作

$ sudo service postgresql start
$ pg_lsclusters

# pg_lscluster <version> <cluster> start
$ pg_ctlcluster 11 main start

$ sudo service postgresql restart

# sudo -u postgres createuser <username>
$ sudo -u postgres createuser river

# sudo -u postgres createdb <database_name>
$ sudo -u postgres createdb river

參考:
How to Install PostgreSQL 11 on Ubuntu 18.04 & 16.04 LTS

Q & A

為何不用 Ubuntu 的 Git 而要安裝 Git Bash ?

我也想都在 Ubuntu 上操作就好 (吶喊
$ git push 時,會遇到即使輸入正確的帳號密碼,仍會說驗證錯誤,無法上傳 GitHub 啊...
撇除 push 功能外, Ubuntu 上的 Git 功能還是可以用喔~

Ubuntu 路徑名稱太長,如何縮短 ?

$ vi ~/.bashrc

修改約第 60–62 行 $color_prompt 的內容

# 修改前
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '


# 修改後
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[[\033[01;32m\]\w\[\033[00m\]]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\$ '

修改儲存離開後,輸入:

$ source ~/.bashrc

即可看到修改狀態 (免重開 Ubuntu)

參考:
Ubuntu(Linux)命令行终端命令提示符过长和提示符颜色显示等效果设置

Ubuntu 的游標消失,該怎辦?

  1. 將 Windows 預設輸入模式從「中文模式」改為「英數模式」,並重開 Ubuntu。

2. 在 Ubuntu 中若不小心切換到中文模式並輸入任意鍵時,游標又會消失,解決方法為 在 Ubuntu 中輸入任意中文字後並按確認 (並非送出指令喔),此時游標再次出現,接著切換回「英數模式」即可。 (中英文切換快捷鍵:Shift 按一下)

Ubuntu 顯示的顏色調整

Ubuntu 中文字、背景、字型、字型大小等全都可以修改,修方方法如下:
滑鼠右鍵點選 Ubuntu 左上角 Logo,選擇「內容」即可進入修改。

個人 Ubuntu 終端機設定可供參考:

本文章同步發表於小菜的 Blog https://riverye.com/

之後以個人部落格做更新,這就不再更新囉~~

--

--

被端走的小菜
被端走的小菜

Written by 被端走的小菜

大家好,我是被端走的小菜。以個人部落格更新為主:https://riverye.com/

No responses yet