Cách cài đặt Ruby on Rails với rbenv trên Debian 8
Một trong những ứng dụng phổ biến nhất dành cho các nhà phát triển muốn tạo các trang web và ứng dụng web là Ruby on Rails. Việc phát triển ứng dụng được đơn giản hóa thông qua việc sử dụng ngôn ngữ lập trình Ruby kết hợp với khung phát triển Rails.Công cụ dòng lệnh rbenv cho phép bạn cài đặt và quản lý Ruby và Rails. Sử dụng rbenv sẽ cung cấp cho bạn một môi trường vững chắc để phát triển các ứng dụng Ruby on Rails vì nó sẽ cho phép bạn di chuyển giữa các version Ruby khi cần thiết, giữ cho toàn bộ group của bạn sử dụng cùng một version . Kho dự án nằm trên GitHub .
rbenv cung cấp hỗ trợ để chỉ định các version dành riêng cho ứng dụng của Ruby, cho phép bạn thay đổi Ruby chung cho từng user và cho phép bạn sử dụng một biến môi trường để overrides version Ruby.
Yêu cầu
Hướng dẫn này sẽ đưa bạn qua quá trình cài đặt Ruby và Rails qua rbenv trên Debian 8. Để làm theo hướng dẫn này, bạn cần có một server Debian 8 với user không phải root .
Cập nhật và cài đặt các phụ thuộc
Đầu tiên, ta nên cập nhật apt-get
vì đây là lần đầu tiên ta sử dụng apt
trong phiên này. Điều này sẽ đảm bảo cache ẩn gói local được cập nhật.
- sudo apt-get update
Tiếp theo, hãy cài đặt các phụ thuộc cần thiết cho rbenv và Ruby bằng apt-get
:
- sudo apt-get install autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
Vì ta sẽ sao chép rbenv từ Git, ta cũng sẽ cài đặt Git:
- sudo apt-get install git-core
Khi ta đã cài đặt tất cả các phụ thuộc hệ thống bắt buộc, ta có thể chuyển sang cài đặt chính rbenv.
Cài đặt rbenv
Bây giờ ta đã sẵn sàng để cài đặt rbenv. Hãy sao chép repository rbenv từ Git. Bạn nên hoàn thành các bước này từ account user mà bạn định chạy Ruby.
- git clone https://github.com/rbenv/rbenv.git ~/.rbenv
Từ đây, bạn nên thêm ~/.rbenv/bin
vào $PATH
để có thể sử dụng trình dòng lệnh của rbenv. Ngoài ra, thêm ~/.rbenv/bin/rbenv init
vào ~/.bash_profile
bạn sẽ cho phép bạn tải rbenv tự động.
- echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
- echo 'eval "$(rbenv init -)"' >> ~/.bashrc
Tiếp theo, mã nguồn rbenv bằng lệnh :
- source ~/.bashrc
Bạn có thể kiểm tra xem rbenv có được cài đặt đúng cách hay không bằng cách sử dụng lệnh type
, lệnh này sẽ hiển thị thêm thông tin về rbenv:
- type rbenv
Cửa sổ terminal của bạn sẽ xuất ra như sau:
Outputrbenv is a function rbenv () { local command; command="$1"; if [ "$#" -gt 0 ]; then shift; fi; case "$command" in rehash | shell) eval "$(rbenv "sh-$command" "$@")" ;; *) command rbenv "$command" "$@" ;; esac }
Để sử dụng lệnh rbenv install
, đơn giản hóa quá trình cài đặt cho các version mới của Ruby, bạn nên cài đặt ruby-build , ta sẽ cài đặt dưới dạng plugin cho rbenv thông qua Git:
- git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Đến đây, bạn nên cài đặt cả rbenv và ruby-build, và ta có thể chuyển sang cài đặt Ruby.
Cài đặt Ruby
Với plugin ruby-build rbenv hiện đã được cài đặt, ta có thể cài đặt bất kỳ version nào của Ruby mà ta có thể cần thông qua một lệnh đơn giản. Đầu tiên, hãy liệt kê tất cả các version có sẵn của Ruby:
- rbenv install -l
Đầu ra của lệnh đó phải là một danh sách dài các version mà bạn có thể chọn để cài đặt.
Bây giờ ta sẽ cài đặt một version cụ thể của Ruby. Điều quan trọng cần lưu ý là cài đặt Ruby có thể là một quá trình dài, vì vậy hãy chuẩn bị cho quá trình cài đặt mất một chút thời gian để hoàn thành.
Ví dụ ở đây, hãy cài đặt version Ruby 2.3.3 :
- rbenv install 2.3.3
Nếu bạn muốn cài đặt và sử dụng version khác, hãy chạy các lệnh rbenv
với số version khác, như trong rbenv install 2.3.0
và rbenv global 2.3.0
.
Quá trình cài đặt có thể mất một chút thời gian. Bạn sẽ nhận được kết quả tương tự, với sammy là tên của user , khi quá trình cài đặt hoàn tất:
Output-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.3.tar.bz2 Installing ruby-2.3.3... Installed ruby-2.3.3 to /home/sammy/.rbenv/versions/2.3.3
Bây giờ cài đặt các cài đặt version ta chỉ cần cài đặt nó như là version mặc định của ta với global
phụ lệnh:
- rbenv global 2.3.3
Xác minh mọi thứ đã sẵn sàng bằng cách sử dụng lệnh ruby
để kiểm tra số version :
- ruby -v
Nếu bạn đã cài đặt version 2.3.3 của Ruby, kết quả của bạn cho lệnh trên sẽ trông giống như sau:
Outputruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]
Đến đây bạn đã cài đặt ít nhất một version Ruby và đã đặt version Ruby mặc định của bạn . Tiếp theo, ta sẽ cài đặt đá quý và Rails.
Làm việc với đá quý
Đá quý là các gói mở rộng chức năng của Ruby. Ta sẽ muốn cài đặt Rails thông qua lệnh gem
.
Để quá trình cài đặt Rails bớt dài dòng, ta sẽ tắt tài liệu local cho mỗi gem mà ta cài đặt. Ta cũng sẽ cài đặt gem Bundler để quản lý các phụ thuộc của ứng dụng:
- echo "gem: --no-document" > ~/.gemrc
- gem install bundler
Khi quá trình cài đặt hoàn tất, bạn sẽ nhận được kết quả tương tự:
OutputFetching: bundler-1.13.6.gem (100%) Successfully installed bundler-1.13.6 1 gem installed
Bạn có thể sử dụng lệnh gem env
(lệnh con env
là viết tắt của environment
) để tìm hiểu thêm về môi trường và cấu hình của đá quý. Bạn có thể kiểm tra vị trí nơi đá quý đang được cài đặt bằng cách sử dụng đối số home
, đối số này sẽ hiển thị đường dẫn đến nơi đá quý được cài đặt trên server của bạn.
- gem env home
Đầu ra của bạn sẽ trông giống như sau:
/home/sammy/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0
Khi ta đã cài đặt gems, ta có thể chuyển sang cài đặt Rails.
Cài đặt Rails
Là cùng một user , bạn có thể cài đặt version Rails mới nhất bằng lệnh gem install
:
- gem install rails
Bạn sẽ nhận được kết quả trong suốt quá trình cài đặt này với xác nhận Rails đã được cài đặt thành công ở cuối.
Nếu bạn muốn cài đặt một version cụ thể của Rails, bạn có thể liệt kê các version Rails hợp lệ bằng cách thực hiện tìm kiếm, thao tác này sẽ xuất ra một danh sách dài các version có thể có. Sau đó, ta có thể cài đặt một version cụ thể, chẳng hạn như 4.2.7 :
- gem search '^rails$' --all
- gem install rails -v 4.2.7
rbenv hoạt động bằng cách tạo một folder chứa các miếng chêm , trỏ đến các file được sử dụng bởi version Ruby hiện đang được kích hoạt. Thông qua lệnh con rehash
, rbenv duy trì các shims trong folder đó để trùng với mọi lệnh Ruby trên mọi version Ruby đã cài đặt trên server của bạn. Khi nào bạn cài đặt một version Ruby mới hoặc một viên đá quý cung cấp các lệnh, bạn nên chạy:
- rbenv rehash
Vì không có kết quả khi điều này thành công, ta có thể xác minh Rails đã được cài đặt đúng cách bằng cách in version của nó, bằng lệnh sau:
- rails -v
Nếu nó được cài đặt đúng cách, bạn sẽ thấy version Rails đã được cài đặt. Bây giờ ta có thể tiếp tục cài đặt môi trường Ruby on Rails của bạn .
Cài đặt JavaScript Runtime
Một số tính năng của Rails, chẳng hạn như Asset Pipeline, phụ thuộc vào JavaScript Runtime. Ta sẽ cài đặt Node.js để cung cấp chức năng này.
Đầu tiên ta có thể di chuyển đến một folder có thể ghi như /tmp
. Từ đó, hãy xác minh tập lệnh Node.js bằng cách xuất nó ra một file , sau đó đọc nó với less
:
- cd /tmp
- \curl -sSL https://deb.nodesource.com/setup_6.x -o nodejs.sh
- less nodejs.sh
Khi đã hài lòng với tập lệnh Node.js, ta có thể thoát less
bằng lệnh q
.
Bây giờ ta có thể cài đặt repo NodeSource Node.js v6.x:
- cat /tmp/nodejs.sh | sudo -E bash -
Cờ -E
được sử dụng ở đây sẽ bảo toàn các biến môi trường hiện có của user .
Sau khi cài đặt xong, ta có thể sử dụng apt-get
để cài đặt Node.Js:
- sudo apt-get install -y nodejs
Đến đây, bạn có thể bắt đầu thử nghiệm cài đặt Ruby on Rails và bắt đầu phát triển các ứng dụng web.
Đang cập nhật rbenv
Khi ta cài đặt rbenv theo cách thủ công bằng Git, ta có thể nâng cấp cài đặt của bạn lên version mới nhất bất kỳ lúc nào:
- cd ~/.rbenv
- git pull
Điều này sẽ đảm bảo ta đang sử dụng version rbenv cập nhật nhất hiện có.
Gỡ cài đặt các version Ruby
Khi bạn download nhiều version hơn của Ruby, bạn có thể tích lũy nhiều version hơn bạn muốn trong folder ~/.rbenv/versions
.
Sử dụng plugin ruby-build để tự động hóa quá trình xóa bằng lệnh con uninstall
. Ví dụ: nếu ta đã cài đặt Ruby 2.1.3 , gõ lệnh này sẽ gỡ cài đặt nó:
- rbenv uninstall 2.1.3
Với lệnh rbenv uninstall
bạn có thể dọn dẹp các version Ruby của bạn để không cài đặt nhiều hơn những gì bạn đang sử dụng.
Học nhiều hơn nữa
Ta đã trình bày những điều cơ bản về cách cài đặt rbenv và Ruby on Rails ở đây để bạn có thể sử dụng nhiều môi trường Ruby. Khi nhu cầu của bạn phát triển, bạn cũng có thể học cách mở rộng các ứng dụng Ruby on Rails trên nhiều server .
Các tin liên quan