Ghost là một nền tảng blog miễn phí và mã nguồn mở được viết bằng node.js , hoàn toàn có thể tùy chỉnh và dành riêng cho xuất bản.
Chuẩn bị máy chủ: Cập nhật các gói, Cài đặt Node.js và NPM
Chúng tôi sẽ trình bày cài đặt bằng cách đăng nhập vào máy chủ root
, để chúng tôi không cần thêm sudo
trước mỗi lệnh. Nếu bạn đã đăng nhập như một người dùng khác, hãy nhớ rằng bạn sẽ cần sudo
.
Trên máy chủ của bạn, hãy chạy các bước sau để cập nhật chỉ mục gói, nâng cấp gói và cài đặt nodejs
và npm
.
apt-get update
apt-get upgrade
apt-get install python software-properties-common gcc g++ make -y # auto install
add-apt-repository ppa:chris-lea/node.js -y
Đầu ra từ các lệnh này phải tương tự như:
gpg: keyring `/tmp/tmpvpe2ugzj/secring.gpg' created
gpg: keyring `/tmp/tmpvpe2ugzj/pubring.gpg' created
gpg: requesting key C7917B12 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpvpe2ugzj/trustdb.gpg: trustdb created
gpg: key C7917B12: public key "Launchpad chrislea" imported
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
OK
Tự động, khóa ký gói sẽ được thêm vào khóa (để có thể xác minh các gói đã tải xuống) và PPA sẽ được thêm vào APT sources.list.d
.
Bây giờ, hãy chạy:
apt-get update # again
apt-get install nodejs -y
Chạy npm
để kiểm tra cài đặt. Bạn sẽ thấy npm
cách sử dụng được in ra màn hình:
Usage: npm <command>
...
...
[email protected] /usr/lib/node_modules/npm
Bây giờ chúng ta có thể cài đặt Ghost.
Cài đặt: Ghost và Nginx
Vì Ghost hiện được coi là "ổn định", nên nó có thể được cài đặt thông qua npm
. Cài đặt bằng lệnh sau:
npm install -g ghost --production
Bỏ qua bất kỳ cảnh báo cho bây giờ.
Tiếp theo, chúng tôi sẽ khởi động Ghost và kiểm tra xem nó có hoạt động tốt không.
cd /usr/lib/node_modules/ghost
npm start --production
Đầu ra sẽ trông như thế này:
> [email protected] start /usr/lib/node_modules/ghost
> node index
Migrations: Database initialisation required for version 003
...
Migrations: Complete
Ghost is running...
Your blog is now available on http://my-ghost-blog.com
Ctrl+C to shut down
Nó hoạt động! Sử dụng Ctrl-C để tắt Ghost và chuyển sang bước tiếp theo: cài đặt (và định cấu hình) Nginx.
Nginx rất đơn giản để cài đặt. Chạy lệnh sau:
apt-get install nginx
Nginx sẽ được cấu hình để cho phép kết nối từ bất kỳ nơi nào trong tự nhiên tới cổng 80 (hoặc 443, nếu sử dụng SSL ) trên máy chủ của bạn, sau đó được chuyển tiếp (" proxy ") sang Ghost. Đây là cách mọi người kết nối với blog của bạn.
Cấu hình Nginx cũng không khó lắm. Thực hiện theo các bước sau để định cấu hình proxy Ghost.
Đầu tiên, xóa tệp cấu hình mặc định:
cd /etc/nginx/
rm sites-enabled/default
Sau đó, tạo một tệp cấu hình mới:
cd sites-available
touch ghost
Điều chỉnh các dòng sau theo nhu cầu của bạn và sử dụng một cái gì đó như nano
hoặc vi
để dán nó vào (bạn sẽ cần đặt thành server_name
tên miền của mình):
server {
listen 80;
server_name yourdomain.tld;
access_log /var/log/nginx/yourdomain.tld.log; # if you want logging
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_pass http://127.0.0.1:2368;
proxy_redirect off;
}
}
Symlink tập tin cấu hình của bạn:
cd /etc/nginx
ln -s sites-available/ghost sites-enabled/ghost
Khởi động lại Nginx:
service nginx restart
Tại thời điểm này, Nginx được cài đặt, định cấu hình và chạy trên máy chủ của bạn.
Cuối cùng: Tự động bắt đầu Ghost
Trình giám sát là một hệ thống kiểm soát quy trình cho phép bạn chạy Ghost khi khởi động mà không cần sử dụng tập lệnh init. Chúng tôi sẽ cài đặt Trình giám sát để quản lý Ghost.
Để cài đặt Trình giám sát, hãy chạy:
apt-get install supervisor
service supervisor start
Sau đó, tạo một tập lệnh mới trong /etc/supervisor/conf.d/ghost.conf
. Dán vào những nội dung này:
[program:ghost]
command = node /usr/lib/node_modules/ghost/index.js
directory = /usr/lib/node_modules/ghost
user = ghost
autostart = true
autorestart = true
stdout_logfile = /var/log/supervisor/ghost.log
stderr_logfile = /var/log/supervisor/ghost_err.log
environment = NODE_ENV="production"
Lưu và đóng tập tin.
Tiếp theo, chúng ta cần tạo một người dùng cho Ghost và cấp cho nó quyền truy cập vào các tệp và cơ sở dữ liệu Ghost. Chạy các lệnh sau:
useradd ghost
chown -R ghost /usr/lib/node_modules/ghost/
supervisorctl reread
supervisorctl update
Thiết lập của chúng tôi đã hoàn tất!
Bây giờ bạn có thể kiểm soát Ghost bằng cách thực thi supervisorctl start ghost
và supervisorctl stop ghost
.