Home Bài học số 3 [Bundle] - Sử dụng Jekyll với Ruby Gem
Post
Cancel

Bài học số 3 [Bundle] - Sử dụng Jekyll với Ruby Gem

Trong bài học thứ 2 này, sau khi tôi đã ghi lại nhất ký thiết lập trình biên dịch, môi trường phát triển cho dự án của mình. Tiếp theo đây để viết mã xây dựng dự án cá nhân tôi cần sự dụng Jekyll cho điều đó bằng bundle mà không cần cài đặt gems bên ngoài thư mục dự án.

Đây không phải là cách làm đơn giản nhất để bắt đầu sử dụng Jekyll. Trong bài viết này tôi sẽ ghi lại thiết lập Jekyll bằng Bundler và tùy chọn mà không cần bất kỳ cài đặt đá quý nào trên toàn hệ thống.

1. Cài đặt và khởi tạo gói

Hãy đảm bảo với tôi rằng Ruby đã được cài đặt trên hệ thống.

1.1 Cài đặt Bundle

Cài đặt với bundler thật dễ dàng qua cli sau

1
gem install bundle

Cùng hãy kiểm tra bundle đã ok hay chưa

1
$ gem list | grep "bundle"

1.2 Khởi tạo Bundle

Điều đầu tiên cần làm là tạo một thư mục mới cho dự án và chạy gói init. Điều này tạo ra một dự án Bundler mới (bằng cách tạo một Gemfile trống).

1
2
3
mkdir my-jekyll-website
cd my-jekyll-website
bundle init

2. Cấu hình đường dẫn cài đặt Bundler

Bước này là tùy chọn. Trong bước này, tôi sẽ định cấu hình Bundler để cài đặt gems trong thư mục con ./vendor/bundle/ project. Ưu điểm của việc này là bundler sẽ cài đặt gems trong thư mục dự án thay vì vị trí được sử dụng bởi cài đặt gems. Điều này có thể giúp tránh các lỗi về quyền mà tôi có thể gặp phải trong quá trình cài đặt gems, Nếu có bỏ qua bước này, Bundler sẽ cài đặt các phụ thuộc vào vị trí được sử dụng bởi cài đặt đá quý.

1
bundle config set --local path 'vendor/bundle'

3. Kết nạp Jekyll

Bây giờ, tôi sẽ sử dụng Bundler để thêm Jekyll làm phụ thuộc cho dự án mới của tôi. Lệnh này sẽ thêm gems Jekyll vào Gemfile của tôi và cài đặt nó vào thư mục ./vendor/bundle/ (hoặc thư mục cài đặt gems mặc định nếu không đặt đường dẫn tùy chỉnh).

1
bundle add jekyll

Bây giờ Jekyll đã được cài đặt, tôi có thể sử dụng nó để tạo khung trang cho trang web của mình. Tôi cần tham số --force vì thư mục của tôi không trống và đã có một số tệp Bundler trong đó. Tôi chạy gói cài đặt riêng vì Jekyll bị nhầm lẫn nếu Gemfile đã tồn tại.

1
2
bundle exec jekyll new --force --skip-bundle .
bundle install

Nhắc đên gem file tôi cũng cần chỉ định các phụ thuộc trong tệp Gemfile trước khi chạy bundle install

1
2
3
4
source 'https://rubygems.org'
gem 'nokogiri'
gem 'rack', '~> 2.2.4'
gem 'rspec'

4. Serve the Site

Trang web mới của tôi đã sẵn sàng! Tôi có thể xây dựng trang web với bundle exec jekyll serve và truy cập trang web tại http://127.0.0.1:4000. Từ đây, tôi đã sẵn sàng tiếp tục phát triển trang web của riêng mình. Tất cả các lệnh Jekyll thông thường đều có sẵn, nhưng nên thêm tiền tố bundle exec vào trước chúng để Bundler chạy phiên bản Jekyll được cài đặt trong thư mục dự án.

5. Commit to Source Control

Nếu tôi đang lưu trữ trang web mới của mình trong version controll, tôi cần các thư mục ./vendor/..bundle/ vì chúng chứa thông tin dành riêng cho người dùng hoặc nền tảng. Người dùng mới sẽ có thể cài đặt các phụ thuộc chính xác dựa trên Gemfile và Gemfile.lock, cả hai đều phải được đăng ký. Tôi có thể sử dụng .gitignore này để bắt đầu nếu muốn.

1
2
3
4
5
6
7
8
9
# Ignore metadata generated by Jekyll
_site/
.sass-cache/
.jekyll-cache/
.jekyll-metadata

# Ignore folders generated by Bundler
.bundle/
vendor/
This post is licensed under CC BY 4.0 by the author.

Comments powered by Disqus.

Bài học số 2 [WSL2] - Thiết lập Filesystem trên Windows

Bài học số 4 [Writting] - Quản lý tài liệu Markdown