Thứ năm, 10/10/2013 | 00:00 GMT+7

Cách sử dụng RVM để quản lý cài đặt và môi trường Ruby trên VPS

Ruby on Rails, hay RoR, là một khung phát triển phổ biến cho ngôn ngữ lập trình Ruby cho phép bạn dễ dàng cài đặt và chạy ứng dụng của bạn mà không gặp nhiều rắc rối.


Việc phát triển các ứng dụng thường đòi hỏi bạn phải mô phỏng các môi trường khác nhau. Các version khác nhau của Ruby có thể cần thiết cho các dự án khác nhau. Với các cài đặt thông thường, điều này sẽ cản trở khả năng linh hoạt của bạn.

May mắn là Trình quản lý version Ruby, được biết đến rộng rãi hơn với tên gọi RVM, cho phép bạn dễ dàng cài đặt nhiều version Ruby có sẵn và dễ dàng chuyển đổi giữa chúng.

Trong các bài viết khác, ta đã đề cập đến cách cài đặt RVM trên các nền tảng khác nhau:

Bài viết này sẽ giả định bạn đã cài đặt RVM. Ta sẽ thảo luận về cách sử dụng cơ bản của tiện ích này và cách bạn có thể quản lý đúng môi trường Ruby của bạn .

Cú pháp cơ bản


Nếu bạn đã cài đặt RVM, bạn sẽ có sẵn lệnh rvm cho mình. Đây là cách ta gọi là RVM.

Cú pháp cơ bản của lệnh là:

<pre>
rvm <span class = “highlight”> tùy chọn lệnh </span> <span class = “highlight”> lệnh </span> <span class = “highlight”> ruby để hành động </span>
</pre>

Ngoài ra còn có các cờ RVM có thể thay đổi hành vi của RVM, được đưa ra theo cách tương tự như các tùy chọn lệnh.

Bạn có thể nhận được danh sách các lệnh có sẵn bằng lệnh :

rvm help 

Nếu bạn muốn được trợ giúp về một lệnh cụ thể, bạn có thể tham khảo nó sau “help” để được hướng dẫn chi tiết hơn:

<pre>
rvm help <span class = “highlight”> command </span>
</pre>

Cách bật tính năng hoàn thành tab


Ta sẽ bật tính năng hoàn thành tab RVM bằng cách đặt dòng sau vào file .bashrc của ta :

[[ -r $rvm_path/scripts/completion ]] && . $rvm_path/scripts/completion 

Điều này sẽ cho phép ta hoàn thành các lệnh RVM bằng lệnh phím TAB hai lần sau khi nhập một phần của lệnh. Ví dụ, ta có thể nhập:

rvm inst 

Đến đây, ta có thể nhấn TAB hai lần và nó sẽ hoàn tất để:

rvm install 

Sau đó ta có thể hoàn thành việc nhập các thông số.

Lưu ý điều này cũng hoạt động với các đối số. Nếu bạn đang chuyển sang một version Ruby khác, có thể chạy lệnh:

rvm use 

Sau khi bạn gõ một dấu cách và sau đó TAB hai lần, bạn sẽ thấy danh sách các version Ruby có sẵn.

Cách cài đặt và gỡ cài đặt hồng ngọc


Ta có thể liệt kê tất cả các viên Hồng ngọc mà ta có sẵn để cài đặt bằng lệnh này:

rvm list known 

Khi bạn đã chọn Ruby mà bạn muốn cài đặt, bạn có thể sử dụng lệnh này:

<pre>
rvm install <span class = “highlight”> ruby_version </span>
</pre>

Nếu bạn muốn gỡ cài đặt một version Ruby, bạn có thể thực hiện việc này đơn giản bằng lệnh :

<pre>
gỡ cài đặt rvm <span class = “highlight”> ruby_version </span>
</pre>

Cách chuyển hồng ngọc


Khi bạn đã cài đặt một vài version của Ruby, bạn có thể liệt kê chúng bằng lệnh sau:

rvm list 

rvm rubies  =* ruby-2.0.0-p247 [ x86_64 ]  # => - current # =* - current && default #  * - default 

Như bạn thấy , RVM cung cấp cho bạn một hướng dẫn hữu ích để cho bạn biết đâu là version Ruby mặc định và hiện tại. Trong trường hợp này, chúng là một và giống nhau.

Chuyển sang một Ruby khác bằng lệnh :

<pre>
rvm sử dụng <span class = “highlight”> ruby_version </span>
</pre>

Đặt một Ruby mặc định để sử dụng bằng cách sử dụng cờ --default :

<pre>
rvm –default use <span class = “highlight”> ruby_version </span>
</pre>

Để chuyển sang Ruby mặc định, hãy nhập:

rvm default 

Để sử dụng version Ruby được cài đặt trên hệ thống (không phải thông qua RVM), bạn có thể chỉ định:

rvm use system 

Cách sử dụng bộ đá quý


Một cách phổ biến để phân phối mã trong Ruby là sử dụng một định dạng được gọi là gems . Đá quý có thể được cài đặt để mở rộng khả năng của bản phân phối Ruby cốt lõi và thường có những viên ngọc được yêu cầu cài đặt để các chương trình nhất định hoạt động chính xác.

Để phù hợp với sứ mệnh của RVM là cung cấp các môi trường Ruby chứa trong đó, cũng có thể cài đặt các đá quý chỉ được liên kết với một cài đặt Ruby duy nhất. RVM gọi chức năng này là gemsets .

Điều này nghĩa là bạn có thể có hai version khác nhau của cùng một loại đá quý hoặc bạn có thể tạo ra các viên ngọc không nhận biết được các loại đá quý khác trên hệ thống.

Để xem các bộ đá quý có sẵn cho Ruby hiện tại, có thể chạy lệnh:

rvm gemset list 

Nếu bạn đã cài đặt nhiều version Ruby, bạn có thể xem tất cả các bộ đá quý bằng lệnh :

rvm gemset list_all 

Theo mặc định, bạn nên có hai bộ đá quý được cấu hình :

  • default : Bộ đá quý được áp dụng nếu không có bộ đá quý nào khác được chỉ định.

  • global : Bộ đá quý này được kế thừa bởi mọi bộ đá quý khác được sử dụng. Bộ này thường không cần chọn vì nó sẽ tự động được đưa vào. Bạn nên cài đặt đá quý được chia sẻ ở đây.

Bạn có thể tạo một bộ đá quý khác dễ dàng. Ta sẽ tạo một bộ gem có tên là “test_project” để chứng minh cách hoạt động của nó:

rvm gemset create test_project 

Nếu bạn muốn sao chép một bộ đá quý hiện tại sang một bộ đá quý mới để chạy một số thử nghiệm, bạn có thể sử dụng lệnh này:

rvm gemset copy default test_project 

Ta có thể thay đổi bộ đá quý mà ta muốn sử dụng:

rvm gemset use test_project 

Ta cũng có thể thay đổi version Ruby và bộ đá quý cùng một lúc. Điều này được thực hiện với version Ruby, theo sau là ký tự “@”, và sau đó chỉ định bộ đá quý:

rvm use 2.0.0@test_project 

Bây giờ, ta có thể cài đặt một viên ngọc Tic-Tac-Toe bằng cách sử dụng lệnh này:

gem install tictactoe -v 0.0.4 

Bây giờ ta có thể thay đổi bộ đá quý mặc định của bạn và cài đặt version cũ hơn của cùng một loại đá quý:

rvm gemset use default gem install tictactoe -v 0.0.3 

Hiện tại, ta đã cài đặt hai version riêng biệt của gem Tic-Tac-Toe và ta có thể kiểm tra chúng một cách độc lập bằng cách chuyển đổi bộ gem mà ta đang sử dụng.

Nếu bạn bối rối về bộ gem mà bạn hiện đang làm việc, lệnh này sẽ in gemset đang hoạt động hiện tại:

rvm gemset name 

Khi bạn sử dụng xong một bộ gem, có lẽ vì quá trình kiểm tra của bạn đã hoàn tất, bạn có thể loại bỏ nó bằng cách ra lệnh sau:

rvm gemset delete test_project 

Cách cấu hình mặc định


RVM có thể được cấu hình với các giá trị mặc định ở một số cấp độ khác nhau. RVM giữ các giá trị mặc định của nó trong một file ở đây:

nano ~/.rvm/config/db 

Bạn có thể xem RVM sẽ sử dụng những gì nếu bạn không đưa ra hướng dẫn cụ thể cho nó.

Lưu ý: Bạn không nên chỉnh sửa file này. Nó được overrides khi RVM được nâng cấp.

Nếu bạn muốn overrides các cài đặt này, bạn có thể thực hiện việc đó trong một file riêng tại:

nano ~/.rvm/user/db 

Để dễ sử dụng, bạn có thể sao chép các thông số ra khỏi file config/db và đặt nó vào file user/db để sửa đổi dễ dàng.

Cách tự động hóa môi trường của bạn


Bạn có thể tạo các cấu hình dành riêng cho dự án chỉ định version Ruby và bộ đá quý nào sẽ sử dụng bằng cách tạo file .rvmrc bên trong folder dự án của bạn.

Điều này giúp loại bỏ nhu cầu theo dõi thủ công version ruby mà bạn đang hoạt động.

Để tạo môi trường dành riêng cho dự án, chỉ cần tạo file .rvmrc trong folder cấp cao nhất của dự án:

nano .rvmrc 

Bên trong, bạn chỉ cần nhập “rvm”, tiếp theo là version Ruby, ký hiệu “@” và sau đó là bộ đá quý:

<pre>
rvm <span class = “highlight”> ruby_version </span> @ <span class = “highlight”> gemset </span>
</pre>

Đó là tất cả những gì bạn cần. Bạn có thể phải chấp nhận cấu hình trong lần đầu tiên nhập folder .

Đảm bảo rằng bạn đã tạo gemset và cài đặt version Ruby mà bạn đang chỉ định, nếu không, bạn sẽ được yêu cầu cài đặt và tạo các thành phần cần thiết khi nào bạn chuyển sang folder đó.

Bạn cũng có thể bao gồm bất kỳ loại cấu hình RVM dành riêng cho dự án nào trong cùng một file này.

Cách cập nhật RVM


Khi RVM ra mắt với version mới, bạn có thể cập nhật cài đặt dễ dàng từ bên trong tiện ích.

Chỉ cần đưa ra lệnh sau:

rvm get stable 

Sau đó RVM sẽ tìm nạp và cài đặt version mới nhất, sau đó reload môi trường. Đây là nơi các cấu hình của bạn sẽ bị xóa sạch nếu bạn đặt chúng trong config/db thay vì user/db .

Nếu bạn muốn nâng cấp lên version mới nhất hiện có (không nhất thiết phải ổn định), có thể chạy lệnh:

rvm get head 

Kết luận


Như bạn thấy , RVM là một công cụ đa năng được dùng để quản lý các dự án và toàn bộ môi trường Ruby. Bạn có thể sử dụng RVM để cấu hình các điều kiện phát triển, cài đặt server và thậm chí để triển khai ứng dụng của bạn .

Nếu bạn làm việc với Ruby một cách thường xuyên, thì việc học cách tạo ra các môi trường Ruby được cá nhân hóa với RVM là rất xứng đáng. Nó có thể giúp tăng tốc quá trình cài đặt ban đầu của bạn và có thể giúp bạn tránh mắc phải những sai lầm tốn kém.

<div class = “author”> Bởi Justin Ellingwood </div>


Tags:

Các tin liên quan