Ruby on Rails (RoR) là một nền tảng ứng dụng web nguồn mở, được phát hành theo Giấy phép MIT. Đây là một nền tảng ứng dụng web phía máy chủ tuân theo khái niệm MVC (Model-View-Controller).
Rails cung cấp các cấu trúc mặc định cho cơ sở dữ liệu, dịch vụ web và các trang web. Hơn 3000 nhà phát triển đã đóng góp mã cho nền tảng Rails và có nhiều ứng dụng nổi tiếng dựa trên Rails, chẳng hạn như Github, Airbnb, Soundcloud, v.v.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Ruby on Rails trên Debian Buster 10. Hướng dẫn này sẽ đề cập đến việc cài đặt RVM (Ruby Version Manager), cài đặt cơ sở dữ liệu PostgreSQL và tạo ứng dụng CRUD đơn giản bằng Ruby on Rails và sử dụng PostgreSQL làm cơ sở dữ liệu phụ trợ.
Điều kiện tiên quyết
Đối với hướng dẫn này, chúng tôi sẽ sử dụng Debian Buster 10 mới nhất với 2GB RAM và 25GB dung lượng đĩa trống và 2 CPU.
Chúng ta sẽ làm gì?
Trước khi thực hiện bất kỳ bước nào khác, hãy cài đặt gói gnupg2 bằng lệnh apt bên dưới.
Tiếp theo, nhập khóa GPGP cho gói RVM bằng lệnh gpg bên dưới.
Tải xuống tập lệnh cài đặt RVM và cài đặt bằng lệnh bên dưới.
Sau khi cài đặt hoàn tất, hãy tải RVM vào hệ thống Debian.
Và Ruby Version Manager đã được cài đặt vào hệ thống Debian 10, hãy kiểm tra bằng lệnh 'rvm' bên dưới.
Kết quả là, RVM (Ruby Version Manager) xxx đã được cài đặt trên Debian Buster 10.
Nâng cấp RVM lên phiên bản ổn định mới nhất bằng lệnh bên dưới.
Sau đó, thêm người dùng 'root' vào nhóm 'rvm'. Trên thực tế, người dùng root sẽ có thể chạy lệnh rvm.
Tiếp theo, cài đặt phiên bản ổn định mới nhất 'Ruby 2.6' bằng lệnh rvm bên dưới.
Sau khi cài đặt hoàn tất, hãy đặt Ruby 2.6 làm phiên bản Ruby mặc định trên hệ thống Debian.
Bây giờ hãy kiểm tra phiên bản Ruby đã cài đặt bằng lệnh bên dưới.
Kết quả là, phiên bản ổn định mới nhất của 'Ruby 2.6' đã được cài đặt thông qua RVM và được sử dụng làm Ruby mặc định trên hệ thống Debian 10.
Trước tiên, hãy cài đặt Công cụ phát triển vào hệ thống Debian bằng lệnh apt bên dưới.
Sau đó, thêm kho lưu trữ Nodesource cho Nodejs 12.
Sau đó, thêm khóa GPG và kho lưu trữ Yarn.
Cập nhật và làm mới tất cả các kho lưu trữ và cài đặt NodeJS và Yarn bằng lệnh apt bên dưới.
Sau khi cài đặt hoàn tất, hãy kiểm tra bằng lệnh bên dưới.
Kết quả là, Nodejs JavaScript Runtime và trình quản lý gói Yarn đã được cài đặt trên Debian Buster 10.
Nâng cấp RubyGem bằng lệnh bên dưới.
Sau khi hoàn tất, hãy kiểm tra phiên bản gem bằng lệnh bên dưới.
Kết quả là, RubyGem đã được nâng cấp lên phiên bản mới nhất.
Tùy chọn:
RubyGem là một trình quản lý gói để cài đặt các gói Ruby. Nó sẽ cài đặt các gói Ruby và tài liệu hướng dẫn của nó.
Để làm cho quá trình cài đặt các gói Ruby trở nên nhỏ, bạn có thể vô hiệu hóa việc cài đặt tài liệu hướng dẫn của gói Ruby thông qua cấu hình RubyGem.
Thêm/tạo tùy chọn gem trên cấu hình ~/.gemrc như bên dưới.
Do đó, RubyGem sẽ chỉ cài đặt gói cốt lõi của các gói Ruby, mà không có tài liệu hướng dẫn.
Cài đặt Ruby on Rails bằng lệnh RubyGem như bên dưới.
Sau khi cài đặt hoàn tất, hãy kiểm tra lệnh rails như bên dưới.
Kết quả là Ruby on Rails 6.0.2.1 đã được cài đặt trên Debian Buster 10. Và bạn đã sẵn sàng để bắt đầu một Ứng dụng mới bằng Rails.
Cài đặt PostgreSQL vào hệ thống Debian bằng lệnh apt bên dưới.
Sau khi cài đặt hoàn tất, hãy khởi động dịch vụ PostgreSQL và thêm nó vào hệ thống khởi động.
Dịch vụ PostgreSQL đã hoạt động.
Tiếp theo, hãy đăng nhập vào shell PostgreSQL bằng lệnh bên dưới.
Đổi mật khẩu cho người dùng PostgreSQL mặc định là 'postgres'.
Nhập mật khẩu mới cho người dùng 'postgres'.
Tiếp theo, hãy tạo một vai trò PostgreSQL mới có tên là 'rails_dev' với đặc quyền 'CreateDB' và mật khẩu 'aqwe123' bằng truy vấn PostgreSQL bên dưới.
Quyền 'createdb' sẽ cho phép người dùng 'rails_dev' tạo cơ sở dữ liệu mới cho dự án Ruby on Rails.
Bây giờ tất cả người dùng có sẵn trên PostgreSQL sử dụng lệnh bên dưới.
Bạn sẽ nhận được người dùng 'rails_dev' với quyền 'CreateDB' để tạo cơ sở dữ liệu.
Nhập 'exit' để đăng xuất khỏi shell PostgreSQL.
Kết quả là bạn đã cài đặt cơ sở dữ liệu PostgreSQL trên Debian buster 10. Ngoài ra, bạn đã tạo một vai trò PostgreSQL mới 'rails_dev' với quyền 'CreateDB' cho dự án 'Ruby on Rails'.
Nó sẽ tạo thư mục dự án có tên là 'myapp' với PostgreSQL làm cơ sở dữ liệu phụ trợ.
Bây giờ hãy đến thư mục 'myapp' và chỉnh sửa cấu hình cơ sở dữ liệu 'config/database.yml'.
Trong phần 'Phát triển', hãy thêm cấu hình chi tiết PostgreSQL bên dưới.
Trong phần 'Kiểm tra', hãy thêm cấu hình chi tiết PostgreSQL bên dưới.
Lưu và đóng.
Tiếp theo, tạo lược đồ cơ sở dữ liệu PostgreSQL và đảm bảo không có lỗi.
Khi mọi thứ hoàn tất, hãy khởi động máy chủ web puma rails bằng lệnh bên dưới.
Dự án Ruby on Rails đang hoạt động trên cổng '8080'.
Mở trình duyệt web của bạn và nhập địa chỉ IP của máy chủ có cổng '8080'.
Bạn sẽ nhận được trang index.html mặc định của dự án Rails. Ngoài ra, nó sẽ phát hiện môi trường triển khai Rails của bạn.
Kết quả là, bạn đã tạo một dự án mới với Ruby on Rails với PostgreSQL làm cơ sở dữ liệu phụ trợ.
Tạo CRUD trên Ruby on Rails bằng lệnh bên dưới.
Bắt đầu dự án rails bằng lệnh bên dưới.
Quay lại trình duyệt web của bạn và kiểm tra dự án rails của bạn bằng URL bên dưới.
Bây giờ bạn sẽ nhận được ứng dụng CRUD đơn giản như bên dưới.
Dưới đây là kết quả sau khi tạo một bài đăng mẫu.
Cuối cùng, quá trình cài đặt Ruby on Rails với cơ sở dữ liệu PostgreSQL trên Debian Buster 10 đã hoàn tất thành công.
Rails cung cấp các cấu trúc mặc định cho cơ sở dữ liệu, dịch vụ web và các trang web. Hơn 3000 nhà phát triển đã đóng góp mã cho nền tảng Rails và có nhiều ứng dụng nổi tiếng dựa trên Rails, chẳng hạn như Github, Airbnb, Soundcloud, v.v.
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Ruby on Rails trên Debian Buster 10. Hướng dẫn này sẽ đề cập đến việc cài đặt RVM (Ruby Version Manager), cài đặt cơ sở dữ liệu PostgreSQL và tạo ứng dụng CRUD đơn giản bằng Ruby on Rails và sử dụng PostgreSQL làm cơ sở dữ liệu phụ trợ.
Điều kiện tiên quyết
Đối với hướng dẫn này, chúng tôi sẽ sử dụng Debian Buster 10 mới nhất với 2GB RAM và 25GB dung lượng đĩa trống và 2 CPU.
Chúng ta sẽ làm gì?
- Cài đặt RVM (Ruby Version Manager)
- Cài đặt Ruby bằng RVM
- Cài đặt Nodejs và Yarn
- Nâng cấp RubyGem (Ruby Package Manager)
- Cài đặt Ruby on Rails Stable
- Cài đặt và cấu hình PostgreSQL Database
- Bắt đầu dự án bằng Ruby on Rails
Bước 1 - Cài đặt RVM (Ruby Version Manager)
Đầu tiên, chúng ta sẽ cài đặt RVM (Ruby Version Manager) vào Debian Server của mình. RVM sẽ giúp bạn dễ dàng cài đặt và quản lý Ruby trên hệ thống của mình, đặc biệt là khi bạn sử dụng nhiều phiên bản Ruby.Trước khi thực hiện bất kỳ bước nào khác, hãy cài đặt gói gnupg2 bằng lệnh apt bên dưới.
Mã:
sudo apt install gnupg2
Mã:
gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2.69D6956105BD0E739499BDB
Mã:
curl -sSL https://get.rvm.io | bash -s stable --ruby
Sau khi cài đặt hoàn tất, hãy tải RVM vào hệ thống Debian.
Mã:
source /usr/local/rvm/scripts/rvm
Mã:
rvm version
Bước 2 - Cài đặt Ruby bằng RVM
Trong bước này, chúng ta sẽ nâng cấp gói RVM lên phiên bản mới nhất và cài đặt phiên bản ổn định mới nhất của Ruby, và đặt nó làm phiên bản Ruby mặc định trên hệ thống của chúng ta.Nâng cấp RVM lên phiên bản ổn định mới nhất bằng lệnh bên dưới.
Mã:
rvm lấy ổn định --autolibs=enable
Mã:
usermod -a -G rvm root
Mã:
rvm install ruby-2.6
Mã:
rvm --default use ruby-2.6
Mã:
ruby --version
Bước 3 - Cài đặt Nodejs và Yarn
Trong bước này, chúng ta sẽ cài đặt Nodejs và Yarn vào hệ thống Debian. Nó sẽ được Rails sử dụng để xử lý các tệp JavaScript.Trước tiên, hãy cài đặt Công cụ phát triển vào hệ thống Debian bằng lệnh apt bên dưới.
Mã:
sudo apt install gcc g++ make
Mã:
curl -sL https://deb.nodesource.com/setup_12.x | bash -
Mã:
curl -sL 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
Mã:
sudo apt update
sudo apt install -y nodejs yarn
Mã:
node --version
yarn --version
Bước 4 - Nâng cấp RubyGem (Ruby Package Manager)
RubyGems là một Ruby Package Manager, đi kèm với công cụ dòng lệnh gem và được tự động cài đặt khi chúng ta cài đặt Ruby trên hệ thống. Đối với bước này, chúng ta sẽ nâng cấp RubyGem lên phiên bản mới nhất.Nâng cấp RubyGem bằng lệnh bên dưới.
Mã:
gem update --system
Mã:
gem -v
Tùy chọn:
RubyGem là một trình quản lý gói để cài đặt các gói Ruby. Nó sẽ cài đặt các gói Ruby và tài liệu hướng dẫn của nó.
Để làm cho quá trình cài đặt các gói Ruby trở nên nhỏ, bạn có thể vô hiệu hóa việc cài đặt tài liệu hướng dẫn của gói Ruby thông qua cấu hình RubyGem.
Thêm/tạo tùy chọn gem trên cấu hình ~/.gemrc như bên dưới.
Mã:
echo "gem: --no-document" >> ~/.gemrc
Bước 5 - Cài đặt Ruby on Rails Stable
Trong bước này, chúng ta sẽ cài đặt Ruby on Rails vào hệ thống Debian. Chúng tôi sẽ cài đặt phiên bản mới nhất của Ruby on Rails v6.0.2.1.Cài đặt Ruby on Rails bằng lệnh RubyGem như bên dưới.
Mã:
gem install rails -v 6.0.2
Mã:
rails -v
Bước 6 - Cài đặt và Cấu hình Cơ sở dữ liệu PostgreSQL
Đối với hướng dẫn này, chúng tôi sẽ sử dụng PostgreSQL làm cơ sở dữ liệu phụ trợ cho Ruby on Rails.Cài đặt PostgreSQL vào hệ thống Debian bằng lệnh apt bên dưới.
Mã:
sudo apt install postgresql postgresql-contrib libpq-dev -y
Mã:
systemctl start postgresql
systemctl enable postgresql
Tiếp theo, hãy đăng nhập vào shell PostgreSQL bằng lệnh bên dưới.
Mã:
sudo -i -u postgres psql
Mã:
\password postgres
Tiếp theo, hãy tạo một vai trò PostgreSQL mới có tên là 'rails_dev' với đặc quyền 'CreateDB' và mật khẩu 'aqwe123' bằng truy vấn PostgreSQL bên dưới.
Mã:
create role rails_dev với mật khẩu đăng nhập createdb 'aqwe123';
Bây giờ tất cả người dùng có sẵn trên PostgreSQL sử dụng lệnh bên dưới.
Mã:
\du
Nhập 'exit' để đăng xuất khỏi shell PostgreSQL.
Kết quả là bạn đã cài đặt cơ sở dữ liệu PostgreSQL trên Debian buster 10. Ngoài ra, bạn đã tạo một vai trò PostgreSQL mới 'rails_dev' với quyền 'CreateDB' cho dự án 'Ruby on Rails'.
Bước 7 - Bắt đầu dự án với Ruby on Rails
Trong Bước 1, chúng ta sẽ tạo một dự án CRUD đơn giản mới bằng Ruby on Rails với PostgreSQL làm cơ sở dữ liệu phụ trợ.Bắt đầu Dự án Rails với PostgreSQL
Đầu tiên, hãy bắt đầu một dự án mới có tên là 'myapp' bằng lệnh rails bên dưới.
Mã:
rails new myapp -d postgresql
Bây giờ hãy đến thư mục 'myapp' và chỉnh sửa cấu hình cơ sở dữ liệu 'config/database.yml'.
Mã:
cd myapp/
vim config/database.yml
Mã:
username: rails_dev
password: aqwe123
host: localhost
port: 5432
Mã:
host: localhost
port: 5432
username: rails_dev
password: aqwe123
Tiếp theo, tạo lược đồ cơ sở dữ liệu PostgreSQL và đảm bảo không có lỗi.
Mã:
rails db:setup
rails db:migrate
Khi mọi thứ hoàn tất, hãy khởi động máy chủ web puma rails bằng lệnh bên dưới.
Mã:
rails s -b 149.28.140.6 -p 8080
Mở trình duyệt web của bạn và nhập địa chỉ IP của máy chủ có cổng '8080'.
Bạn sẽ nhận được trang index.html mặc định của dự án Rails. Ngoài ra, nó sẽ phát hiện môi trường triển khai Rails của bạn.
Kết quả là, bạn đã tạo một dự án mới với Ruby on Rails với PostgreSQL làm cơ sở dữ liệu phụ trợ.
Tạo ứng dụng CRUD đơn giản
Tiếp theo, chúng ta sẽ tạo CRUD đơn giản trên dự án 'myapp' của mình.Tạo CRUD trên Ruby on Rails bằng lệnh bên dưới.
Mã:
rails g scaffold Tiêu đề bài đăng: chuỗi nội dung: văn bản
rake db: di chuyển
Bắt đầu dự án rails bằng lệnh bên dưới.
Mã:
rails s -b 192.168.1.10 -p 8080
Bây giờ bạn sẽ nhận được ứng dụng CRUD đơn giản như bên dưới.
Dưới đây là kết quả sau khi tạo một bài đăng mẫu.
Cuối cùng, quá trình cài đặt Ruby on Rails với cơ sở dữ liệu PostgreSQL trên Debian Buster 10 đã hoàn tất thành công.