Jekyll là một trình tạo trang web tĩnh mã nguồn mở, được phát triển bằng ngôn ngữ lập trình Ruby. Đây là giải pháp lý tưởng cho những ai muốn xây dựng website tĩnh hoặc blog một cách nhanh chóng và hiệu quả. Trong bài viết này, mình sẽ hướng dẫn cài đặt website với Jekyll trên Ubuntu 20.04 tự động chỉ với vài câu lệnh đơn giản.
Những điểm chính
- Khái niệm Jekyll: Hiểu được Jekyll là một công cụ tạo website tĩnh mã nguồn mở, phù hợp để xây dựng blog và website tĩnh, giúp tiết kiệm thời gian và tăng hiệu quả quản lý nội dung.
- Yêu cầu chuẩn bị cho việc cài đặt website với Jekyll trên Ubuntu 20.04: Biết được các điều kiện cần thiết để cài đặt Jekyll, bao gồm máy chủ Ubuntu và tài khoản non-root.
- Các bước thiết lập website với Jekyll trên Ubuntu 20.04: Hướng dẫn chi tiết từng bước, giúp bạn dễ dàng thực hiện cài đặt và triển khai Jekyll trên Ubuntu 20.04.
- Giới thiệu về Vietnix: Gợi ý sử dụng dịch vụ VPS của Vietnix để đảm bảo hiệu suất, bảo mật và hỗ trợ tốt nhất.
Jekyll là gì?
Jekyll là một trình tạo website tĩnh mã nguồn mở được phát triển bằng ngôn ngữ lập trình Ruby, giúp bạn xây dựng website tĩnh hoặc blog một cách nhanh chóng và hiệu quả. Công cụ này cho phép quản lý trang web chỉ bằng các dòng lệnh, từ khâu khởi tạo đến triển khai sản phẩm.

Jekyll đặc biệt phù hợp để quản lý blog, hỗ trợ danh mục, bài viết, bố cục và cung cấp nhiều công cụ nhập dữ liệu sẵn có. Nếu bạn thường xuyên làm việc ngoại tuyến, thích sử dụng trình soạn thảo nhẹ thay vì giao diện web phức tạp hoặc muốn kiểm soát phiên bản để theo dõi các thay đổi trên website, thì Jekyll chính là lựa chọn lý tưởng.
Yêu cầu chuẩn bị
Để cài đặt website tĩnh bằng Jekyll trên Ubuntu 20.04, bạn cần chuẩn bị một máy chủ Ubuntu 20.04 với tài khoản non-root có quyền sudo. Sau khi đáp ứng yêu cầu này, bạn có thể bắt đầu quá trình cài đặt Jekyll và các thành phần phụ thuộc.
Nếu bạn muốn đảm bảo website của mình hoạt động ổn định, hiệu suất cao và an toàn, sử dụng VPS là một lựa chọn tối ưu. Vietnix hiện cung cấp nhiều gói VPS phù hợp với từng nhu cầu khác nhau như VPS Giá Rẻ, VPS SSD, VPS AMD, VPS NVMe.
Sử dụng VPS của Vietnix, bạn sẽ có một môi trường ổn định, an toàn để triển khai Jekyll trên Ubuntu 20.04, tập trung phát triển nội dung mà không lo các vấn đề kỹ thuật. Liên hệ Vietnix ngay hôm nay để được tư vấn gói VPS phù hợp.
Hướng dẫn cài đặt website với Jekyll trên Ubuntu 20.04
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.
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 – Nhà cung cấp VPS uy tín, tốc độ cao, bảo mật hàng đầu
Vietnix là đơn vị tiên phong trong lĩnh vực cung cấp VPS chất lượng cao tại Việt Nam, với hơn 12 năm kinh nghiệm và sự tin tưởng từ hơn 90.000 khách hàng. Hệ thống máy chủ mạnh mẽ, sử dụng công nghệ hiện đại, đảm bảo tốc độ vượt trội, độ trễ thấp, giúp website và ứng dụng hoạt động mượt mà, ổn định ngay cả khi có lượng truy cập lớn.
Với tiêu chuẩn bảo mật nghiêm ngặt, Vietnix cam kết bảo vệ dữ liệu khách hàng bằng các chứng chỉ ISO quốc tế, sao lưu tự động. Đội ngũ kỹ thuật hỗ trợ 24/7, sẵn sàng giải quyết mọi vấn đề nhanh chóng, đảm bảo trải nghiệm tốt nhất cho người dùng.
Chọn Vietnix – Chọn VPS tốc độ cao, bảo mật vững chắc, dịch vụ chuyên nghiệp. Liên hệ ngay để được tư vấn gói VPS phù hợp với nhu cầu của bạn!
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
- Website: https://vietnix.vn/
Trên đây là hướng dẫn cài đặt website với Jekyll trên Ubuntu 20.04. Hy vọng bài viết này sẽ giúp bạn dễ dàng thiết lập và triển khai website của mình một cách nhanh chóng và hiệu quả. Jekyll là một công cụ mạnh mẽ và linh hoạt, hãy khám phá thêm các tính năng của công cụ này để xây dựng những website ấn tượng. Chúc bạn thành công!