Jekyll được biết đến là một trình tạo trang web tĩnh mã nguồn mở sử dụng ngôn ngữ lập trình Ruby. Đây được xem là giải pháp tuyệt vời cho những ai muốn xây dựng website tĩnh hoặc blog một cách nhanh chóng. Bài viết dưới đây của Vietnix sẽ hướng dẫn cài đặt website với Jekyll trên Ubuntu 20.04 một cách tự động bằng một vài câu lệnh.
Giới thiệu về trình tạo website tĩnh Jekyll
Đối với những ai đang muốn tạo website tĩnh hoặc blog một cách nhanh chóng thì Jekyll được xem là giải pháp tối ưu. Jekyll là một trình tạo trang web tĩnh mã nguồn mở được xây dựng bằng ngôn ngữ lập trình Ruby. Công cụ này hỗ trợ thực hiện nhanh các lệnh quản lý trang web từ khi bắt đầu đến khi triển khai sản phẩm chỉ bằng các dòng lệnh.
Jekyll có tính năng quản lý blog, ưu tiên cho các danh mục, bài viết và bố cục, đồng thời cung cấp nhiều công cụ nhập dữ liệu có sẵn để nhập các nội dung cho blog. Nếu bạn thường xuyên phải làm việc ngoại tuyến, ưa thích việc sử dụng trình soạn thảo nhẹ hơn các biểu mẫu website để duy trì nội dung hoặc sử dụng phiên bản điều khiển để theo dõi các thay đổi trên website, thì Jekyll sẽ rất hữu ích cho bạn.
Yêu cầu chuẩn bị
Để thực hiện được quá trình cài đặt một website tĩnh bằng công cụ Jekyll trên Ubuntu 20.04 bạn cần chuẩn bị một máy chủ Ubuntu 20.04 với non-root user sử dụng đặc quyền sudo.
Sau khi hoàn thành yêu cầu này, bạn đã có thể bắt đầu cài đặt Jekyll và các thành phần phụ thuộc.
Nếu bạn muốn có một môi trường ổn định, hiệu suất cao và bảo mật cho website của mình, sử dụng VPS để thực hiện là sự lựa chọn tốt.
Vietnix hiện đang cung cấp nhiều gói VPS khác nhau để đáp ứng nhu cầu của các khách hàng. Dưới đây là một số gói VPS của Vietnix mà bạn có thể tham khảo:
- VPS Giá Rẻ phù hợp cho các dự án nhỏ, tiết kiệm chi phí nhưng vẫn đảm bảo hiệu suất tốt cho website.
- VPS Phổ Thông và VPS Cao Cấp có tài nguyên mạnh mẽ hơn, đảm bảo hiệu suất cao cho các trang web có lưu lượng truy cập vừa và lớn hoặc yêu cầu xử lý phức tạp.
- VPS NVMe được trang bị ổ cứng NVMe tốc độ cao, mang lại tốc độ đọc/ghi dữ liệu cực nhanh, giúp website hoạt động mượt mà và nhanh chóng.
Sử dụng VPS của Vietnix, bạn sẽ có một môi trường ổn định và an toàn để phát triển trang web Jekyll của mình trên Ubuntu 20.04, yên tâm tập trung vào việc phát triển nội dung và tính năng của trang web mà không phải lo lắng về vấn đề kỹ thuật.
Hãy liên hệ với Vietnix để lựa chọn gói dịch vụ VPS phù hợp với nhu cầu và ngân sách của bạn.
Các bước thiết lập website với Jekyll trên Ubuntu 20.04
Dưới đây là các bước để tiến hành thiết lập một trang web phát triển Jekyll trên hệ điều hành Ubuntu phiên bản 20.04.
Bước 1: Cài đặt Jekyll
Bước đầu tiên, bạn cần phải cập nhật các gói để bảo đảm rằng bạn có thông tin mới nhất về các phiên bản mới được cập nhật và các yếu tố phụ thuộc của nó.
$ sudo apt update
Tiếp theo, bạn cài đặt make
và build-essential
để các thư viện của công cụ Jekyll có thể biên dịch. Ở đây bạn sẽ sử dụng tùy chọn y
để xác nhận cài đặt các gói và tránh các lời nhắc xác nhận ở các bước sau.
$ sudo apt -y install make build-essential ruby ruby-dev
Sau khi hoàn tất, bạn thêm hai dòng lệnh vào tệp .bashrc
để trình quản lý gói Ruby đặt các gem
vào thư mục chính của người dùng. Điều này sẽ giúp tránh các vấn đề từ cài đặt trên hệ thống đồng thời thêm các lệnh Jekyll
cục bộ vào đường dẫn PATH
của người dùng.
Bạn tiến hành mở .bashrc
bằng một trình soạn thảo bất kỳ, dưới đây là một ví dụ với trình soạn thảo nano:
$ nano .bashrc
Ở phía dưới cùng của tệp, bạn thêm các dòng lệnh sau:
# Ruby exports
export GEM_HOME=$HOME/gems
export PATH=$HOME/gems/bin:$PATH
Sau khi thêm xong, bạn bấm lưu và đóng file. Để kích hoạt, bạn chạy câu lệnh sau:
$ source ~/.bashrc
Sau khi hoàn tất, gem
được sử dụng để cài đặt Jekyll cũng như Bunler, phần mềm quản lý và các phần phụ thuộc Gem.
$ gem install jekyll bundler
Tiếp theo, bạn cần phải cài đặt tường lửa cho phép truy cập từ máy chủ web của Jekyll.
Bước 2: Bật tường lửa
Kiểm tra xem tường lửa trên máy đã được bật lên hay chưa. Tường lửa cần được kích hoạt để bảo đảm truy cập.
$ sudo ufw status
Nếu trạng thái hiển thị là inactive
, hãy chạy câu lệnh sau để bật tường lửa:
ufw allow OpenSSH
sudo ufw enable
Thao tác này sẽ cho phép tường lửa được kích hoạt đồng thời khi khởi động hệ thống. Bạn có thể nhận được lời nhắc như sau ( xác nhận “y” để tiếp tục):
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup
Trong trường hợp này, chỉ có giao thức SSH được phép truy cập:
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Tiếp theo, bạn cần mở cổng 4000, cổng mặc định cho máy chủ phát triển Jekyll:
$ sudo ufw allow 4000
Giờ đây, các quy tắc tường lửa sẽ gồm có:
Output
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
4000 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
4000 (v6) ALLOW Anywhere (v6)
Như vậy, với phần mềm cài đặt và các cổng cần thiết đã mở, bạn đã có thể bắt đầu tạo trang web phát triển Jekyll.
Bước 3: Tạo một trang web phát triển mới
Từ thư mục gốc, bạn sử dụng câu lệnh new
của Jekyll để tạo bộ khung cho website trong thư mục con có tên www
:
$ cd ~
$ jekyll new www
Lệnh jekyll new
khởi tạo một bundle install
để thiết lập các dependencies cần thiết, sau đó cài đặt tự động một chủ đề được gọi là Minima. Sau khi cài đặt thành công, bạn cần nhận được một output như sau:
Output
New jekyll site installed in /home/sammy/www.
Lệnh new
của Jekyll sẽ tạo ra các thư mục và file như sau:
...
├── 404.html
├── about.markdown
├── _config.yml
├── Gemfile
├── Gemfile.lock
├── index.markdown
├── _posts
│ └── 2020-05-29-welcome-to-jekyll.markdown
└── _site
Đây không phải là các file web thực sự, chúng là các tệp nguồn được Jekyll sử dụng để tạo các website tĩnh. Jekyll sẽ phụ thuộc vào các tên cụ thể, các mẫu tên và cấu trúc thư mục để phân tích cú pháp các nguồn nội dung khác nhau và kết hợp chúng tạo ra trang web tĩnh. Điều quan trọng là việc sử dụng cấu trúc hiện có và tuân theo các quy ước đặt tên của Jekyll khi thêm các bài viết và các trang.
Lưu ý: Câu lệnh tree trong Linux là một công cụ hữu ích để xem cấu trúc tệp và thư mục từ dòng lệnh. Bạn có thể tiến hành cài đặt nó bằng câu lệnh sau:
$ sudo apt install tree
Để sử dụng nó, hãy sử dụng lệnh cd
vào thư mục bạn muốn và gõ tree
hoặc đưa ra đường dẫn đến điểm bắt đầu với tree /home/sammy/www
.
Bước 4: Khởi động máy chủ web của Jekyll
Web server lightweight của Jekyll được tích hợp sẵn để hỗ trợ phát triển website bằng cách giám sát các tệp trong thư mục và tự động tạo lại website tĩnh mỗi khi lưu các thay đổi.
Bởi vì bạn đang làm việc trên một chiếc máy chủ từ xa nên bạn cần chỉ định địa chỉ IP máy chủ để duyệt website từ máy tính cục bộ của mình. Nếu bạn đang thao tác trên máy tính cục bộ, bạn có thể chạy jekyll server
mà không cần thiết lập máy chủ và kết nối với http://localhost:4000
.
$ cd ~/www
$ jekyll serve --host=203.0.113.0
Output of jekyll server
Configuration file: /home/sammy/www/_config.yml
Source: /home/sammy/www
Destination: /home/sammy/www/_site
Incremental build: disabled. Enable with --incremental
Generating...
done in 0.645 seconds.
Auto-regeneration: enabled for '/home/sammy/www'
Server address: http://203.0.113.0:4000/
Server running... press ctrl-c to stop.
Khi bạn gọi đến jekyll server
, Jekyll sẽ phân tích cấu hình và các file nội dung vào một thư mục mới _site
và bắt đầu phục vụ nội dung trong thư mục _site
đó:
...
├── 404.html
├── about.markdown
├── _config.yml
├── Gemfile
├── Gemfile.lock
├── index.markdown
├── _posts
│ └── 2020-05-29-welcome-to-jekyll.markdown
└── _site
├── 404.html
├── about
│ └── index.html
├── assets
│ ├── main.css
│ │ ├── main.css.map
│ └── minima-social-icons.svg
├── feed.xml
├── index.html
└── jekyll
└── update
└── 2020
└── 05
└── 29
└── welcome-to-jekyll.html
Jekyll cũng sẽ bắt đầu theo dõi thư mục hiện tại www
để cập nhật các thay đổi. Ngay khi có sự thay đổi với một bài đăng hoặc một trang đã được lưu, website tĩnh sẽ được tự động xây dựng lại. Do đó, một điều quan trọng là không thực hiện các thay đổi trực tiếp trên các file trong thư mục _site
.
Nếu bạn để cửa sổ terminal trên máy chủ phát triển đang chạy ở foreground khi làm việc với trang web của mình, bạn sẽ nhận được các phản hồi ngay lập tức khi bạn thêm các trang, thêm các bài đăng và thay đổi nội dung.
Lưu ý: Nếu bạn đang làm việc trên một trang web lớn, cho phép --incremental
có thể tăng tốc độ rebuild mỗi khi bạn thực hiện một thay đổi bằng cách chỉ tạo lại các tệp đã thay đổi, dù với một vài site nhỏ thì điều này có thể chưa cần thiết. Đây là một tính năng hữu ích, bạn có thể tìm hiểu thêm trên trang web của Jekyll.
Bây giờ, trang web đã có sẵn. Trong trình duyệt, bạn có thể truy cập nó tại địa chỉ máy chủ và cổng được hiển thị trong output từ jekyll server
.
Vietnix là nhà cung cấp dịch vụ hosting và VPS tốc độ cao chuyên nghiệp hàng đầu tại Việt Nam. Điểm nổi bật của Vietnix là công nghệ chống tấn công DDoS độc quyền, giúp bảo vệ và đảm bảo sự ổn định cho hệ thống của khách hàng.
Với phương châm lấy sự thành công của khách hàng làm mục tiêu để phục vụ, Vietnix không ngừng phát triển hạ tầng để đảm bảo tốc độ cao và sự ổn định cho tất cả các sản phẩm. Đồng thời, nâng cao chất lượng hỗ trợ nhằm mang đến sự hài lòng cho khách hàng.
Những thế mạnh của Vietnix phải kể đến đó là:
- Hơn 11 năm kinh nghiệm cung cấp hosting, VPS.
- Đồng hành cùng hơn 50.000 khách hàng.
- Hơn 100.000 dịch vụ đã được kích hoạt.
- 97% khách hàng đánh giá 5 sao.
- 89% khách hàng duy trì sử dụng dịch vụ đến thời điểm hiện tại.
- Đạt giải thưởng Thương hiệu Việt Nam xuất sắc 2022.
Thông tin liên hệ:
- Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh
- Hotline: 1800 1093
- Email: sales@vietnix.com.vn
Lời kết
Như vậy, Vietnix đã hướng dẫn bạn cách để cài đặt Jekyll và tạo một trang web tĩnh phát triển một số nội dung được tạo tự động. Hy vọng với các hướng dẫn trên đây, bạn có thể tự cài đặt một trang web phát triển Jekyll trên Ubuntu 20.04 thành công. Nếu có bất kỳ đóng góp nào, hãy để lại bình luận ngay dưới đây cho Vietnix nhé.