Giới thiệu Ghost CMS
Ghost cũng giống như WordPress là một CMS(content management system) mã nguồn mở, nhưng mới xuất hiện dùng để tạo website được xây dựng dựa trên nền tảng hỗ trợ xây dựng ứng dụng web (Web Application) Node JS.
Một số tính năng của Ghost ở Phiên bản hiện tại 2.0
- Ghost sử dụng Markdown để viết bài và soạn bài. Và đặc biệt là giao diện quản lý nội dung rất đơn giản và dễ sử dụng.
- Cài sẵn AMP (Accelerated Mobile Pages)
- Code rõ ràng, dễ hiểu dễ tuỳ biến.
còn nhiều cái nữa mà các bạn có thể tìm hiểu thêm sau khi chuyển sang sử dụng Ghost.
Chuẩn bị cài đặt Ghost CMS
Trước khi cài đặt Ghost bạn phải chuẩn bị một số thứ sau.
- Một VPS chạy ubuntu 16.04 hoặc 18.10 ( bắt buộc). Mình mua một VPS khoảng 2,5$/tháng tại Vultr.com là đã có thể cài đặt chạy tốt Ghost rồi.
- Tên miền(domain) của bạn. Bạn có thể mua tên miền tại godady hoặc namecheap. Mình đã chuẩn bị sẵn domain shareaeprojects.com và đã trỏ tới ip của server Vultr.
- VPS của bạn phải tối thiếu là 1GB RAM nếu không quá trình cài đặt có thể gặp lỗi, để khắc phục bạn sẽ phải bổ sung thêm Swap RAM bằng 4 lệnh sau:
dd if=/dev/zero of=/var/swap bs=1k count=1024k
mkswap /var/swap
swapon /var/swap
echo '/var/swap swap swap default 0 0' >> /etc/fstab
Các bước cài đặt Ghost CMS
Chuẩn bị Server cài đặt Ghost CMS
- Đăng nhập vào VPS đã cài đặt sẵn Ubuntu.
- Trên Window dùng PuTTY
- Trên Mac dùng terminal. Xem Cách đăng nhập vào VPS bằng SSH trên MAC
- Sau khi đăng nhập vào thì user mặc định là root, lúc này ta cần tạo thêm một user khác để cài đặt Ghost. Sử dụng lênh sau để thêm user mới
adduser <user>
- Cấp quyền cao nhất cho user bạn mới tạo bằng lệnh sau.
usermod -aG sudo <user>
- Đăng nhập vào user mới tạo bằng lệnh.
su <user>
- Tiến hành cập nhật những gói update mới nhất cho ubuntu bằng 2 lệnh sau.
sudo apt-get update
sudo apt-get upgrade
- Cài đặt Nginx server trên ubuntu.
sudo apt-get install nginx
Chp phép kết nối http/https trên firewall bằng lệnh sau
sudo ufw allow 'Nginx Full'
- Tiếp tục cài đặt MySQL bằng lệnh sau.
sudo apt-get install mysql-server
Sau khi cài đặt MySQL bạn cần làm các bước sau để đặt mật khẩu cho root user.
chạy lệnh
sudo mysql
chạy tiếp lệnh
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
trong đó password chính là password bạn tự đặt.
thoát mysql bằng lênh
quit
đăng nhập lại vào user bạn đã tạo từ đầu
su <user>
- Cài đặt Node.JS bằng 2 lệnh sau:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash
sudo apt-get install -y nodejs
- Cài đặt Ghost CLI:
sudo npm install ghost-cli@latest -g
Sau khi cài ghost CLI thành công là bạn đã có một server đầy đủ các thành phần cần thiết để cài đặt Ghost.
Bắt đầu cài đặt Ghost CMS bằng Ghost CLI
- Tạo một thư mới để chứa Ghost bằng lệnh sau (tên thư mục các bạn tự chọn ở đây mình chọn là shareae.)
sudo mkdir -p /var/www/shareae
- Cài đặt quền sở hữu cho thư mục mới tạo
sudo chown <user> /var/www/shareae
- Cấp quyền cho thư mục mới tạo
sudo chmod 775 /var/www/shareae
- Vào thư mục mới tạo
cd /var/www/shareae
Thư mục cài đặt ghost phải hoàn toàn trống nếu không quá trình cài Ghost sẽ không thể bắt đầu.
- Tiến hành cài đặt Ghost
ghost install
Sau khi chạy lệnh “Ghost Install” quá trình cài đặt sẽ bắt đầu bằng những câu hỏi sau
- Blog URL.
Nhập chính xác domain của bạn đã chuẩn bị sẵn, ở đây mình đã chuẩn bị domain shareaeprojects.com. - MySQL hostname
dòng này các bạn nhập localhost nhé. - MySQL username
sử dụng username mặc đinh là root. - MySQL password
mật khẩu cho user root các bạn đã tạo ở bước chuẩn bị server. - Ghost database name
chọn tên bất kì và ghost sẽ tự tạo database cho bạn. - Set up a ghost MySQL user?
tạo thêm user cho MySQL - Set up NGINX?
nên chọn yes và Ghost sẽ tự cấu hình Nginx cho bạn. - Set up SSL?
Nếu bạn đầu bạn chọ URL có đường dẫn http các bạn nên bỏ qua bước này và cài đặt sau cũng được. Nếu URL có đường dẫn https các bạn chọn yes Ghost-CLI sẽ tự động cài đặt SSL từ Let’s Encrypt cho website của bạn. - Set up systemd?
nên chọn yes ở bước này. - Start Ghost?
chọn yes để chạy Ghost và website của bạn đã online.
Bậy giờ website đã online và bạn có thể bắt đầu bằng cách đăng nhập vào dashboard của Ghost bằng đường dẫn shareaeprojects.com/ghost
Chờ video hướng dẫn của bạn.
nói rõ hơn đoạn xài vps vultr 2.5$ đc ko b, m ko hiểu cách hoạt động + thiết lập ipv6 như nào cho web nó chạy 🙁 nó ko chạy nginx + apache nên ko biêt trỏ port về + lắng nghe như nào
Chào bạn, nó ko cần trỏ port hay phải cấu hình gì cả nhé. https://nguyenhongson.net/tro-domain-ve-vps-o-vultr nó cũng gần như trong bài viết này thôi.