阿里云CentOS 搭建hexo 博客

基于CentOS 環(huán)境

總共就是客戶端和服務(wù)端以及阿里云的配置

阿里云:

469D1610-9C2C-4EB1-A0DD-C772C79D4987.png
0E562C1F-91FC-435A-A76A-F609D3739483.png

配置完畢, 這tm是個大坑

第一部分: 服務(wù)器環(huán)境搭建,包括安裝 Git 、Nginx配置 、創(chuàng)建 git 用戶 。

安裝git和nodejs

yum install git

#安裝NodeJS
curl --silent --location https://rpm.nodesource.com/setup_5.x | bash -
adduser git
chmod 740 /etc/sudoers
vim /etc/sudoers

找到以下內(nèi)容

## Allow root to run any commands anywhere
root    ALL=(ALL)    ALL

在下面添加一行

git ALL=(ALL) ALL

如圖:


326721E1-A412-4035-B1B1-A3035E9C0DF1.png

保存退出后改回權(quán)限

chmod 400 /etc/sudoers

隨后設(shè)置Git用戶的密碼,

需要root權(quán)限

sudo passwd git

切換至git用戶,創(chuàng)建 ~/.ssh 文件夾和 ~/.ssh/authorized_keys 文件,并賦予相應(yīng)的權(quán)限

su git
mkdir ~/.ssh
vim ~/.ssh/authorized_keys
#然后將電腦中執(zhí)行 cat ~/.ssh/id_rsa.pub | pbcopy ,將公鑰復(fù)制粘貼到authorized_keys
chmod 600 ~/.ssh/authorzied_keys
chmod 700 ~/.ssh

然后再客戶端(電腦上),執(zhí)行ssh -v git@ip地址(就是你阿里云的外網(wǎng)地址) ,應(yīng)該就能免密登陸了

接下來安裝Nginx和配置

安裝:
yum install nginx

啟動:
1.systemctl start nginx
2.systemctl enable nginx

然偶把服務(wù)器的公網(wǎng)地址輸入瀏覽器, 出現(xiàn)下面的圖片就對了,沒出來就有問題

2C124E8C-AC1A-4009-9C35-77A20233A0D9.png
配置Nginx
vim /etc/nginx/conf.d/default.conf

依照下圖進(jìn)行修改,將“/usr/share/nginx/html”改為“/usr/share/nginx/html/blog”。

F97EA0E5-3435-496E-B643-ADC32ABEA1C2.png

sudo mkdir -p /usr/share/nginx/html/blog
sudo chown -R git:git /usr/share/nginx/html/blog

這樣上面的地址就算對應(yīng)上了

在服務(wù)器上初始化一個git裸庫
切換到git用戶,然后切換到git用戶目錄,接著初始化裸庫,代碼如下:

su git
cd ~
git init --bare blog.git

接著新建一個post-receive文件

vim ~/blog.git/hooks/post-receive

然后在該文件中輸入以下內(nèi)容:

#!/bin/sh
git --work-tree=/usr/share/nginx/html/blog --git-dir=/home/git/blog.git checkout -f

保存退出之后,再輸入以下代碼,賦予該文件可執(zhí)行權(quán)限。

chmod +x ~/blog.git/hooks/post-receive

第二部分: 本地Hexo初始化, 包括安裝 NodeJS 、hexo-cli, 生成本地靜態(tài)網(wǎng)站

初始化Hexo博客

首先要安裝 hexo-cli,安裝hexo-cli 需要 root 權(quán)限,使用 sudo 運行

sudo npm install -g hexo-cli

然后初始化Hexo程序

cd ~/Documents
hexo init blog

等執(zhí)行成功以后安裝兩個插件, hexo-deployer-githexo-server ,這倆插件的作用分別是使用Git自動部署,和本地簡單的服務(wù)器。

hexo-deployer-git幫助文檔
hexo-server幫助文檔

cd blog
npm install hexo-deployer-git --save
npm install hexo-server

初始化Nodejs

brew install nodejs

生成自己的第一篇文章 hello world !

使用 hexo new <文章名稱> 來新建文章,該命令會成成一個 .md文件放置在 sources/_posts文件夾。

hexo new "hello Hexo"
vim sources/_posts/hello-hexo.md

編輯完畢以后, 使用hexo g將 .md文件渲染成靜態(tài)文件,然后啟動hexo-server:

hexo g
hexo server

現(xiàn)在便可以打開瀏覽器訪問 http://localhost:4000 來查看我們的博客了!

然后停掉

配置_config.yml,完成自動化部署

然后打開~/Documents/blog/_config.yml 找到 deploy

deploy:
    type: git
    repo: git@SERVER:/home/git/blog.git       #此處的SERVER需改為你自己服務(wù)器的ip
    branch: master                            #這里填寫分支
    message:                                  #提交的信息
CEFB59F3-D373-47F6-B71D-AA4B931B5E7E.png

保存后,嘗試將我們剛才寫的"hello hexo"部署到服務(wù)器

hexo clean
hexo generate --deploy

訪問服務(wù)器地址,就可以看到我們寫的文章"Hello hexo",以后寫文章只需要:

hexo new "Blog article name"
···寫文章
hexo clean && hexo generate --deploy
感謝兩篇文章:

https://segmentfault.com/a/1190000005723321
https://blog.csdn.net/fogcrane/article/details/79108079

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第一章 安裝Git工具 下載GitHub for Windows,直接點擊安裝,安裝完成后,可以看到“Git Sh...
    不圓的石頭閱讀 12,152評論 5 63
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,694評論 19 139
  • 轉(zhuǎn)載http://www.cnblogs.com/bxm0927/p/6927340.html 大概流程: 1. ...
    阿de牧閱讀 6,965評論 3 32
  • 博客的架構(gòu) 先搞明白Hexo博客從搭建到自動發(fā)布的架構(gòu),才能更好的理解我們每一步進(jìn)行的操作。不然只跟著步驟過了一遍...
    指尖的跳躍閱讀 14,578評論 3 10
  • 如果沒有荷西的撒哈拉 三毛的《撒哈拉的故事》不只一次的去讀,每次讀都有不同的體會,每次都想要跟著她的腳步,去那令人...
    凱思閱讀 386評論 0 0

友情鏈接更多精彩內(nèi)容