服务端配置
创建初始化一个仓库
1 2
| mkdir -p /home/hexo git init --bare blog.git
|
–bare 是 git init 命令的一个选项,用于创建一个裸仓库。
进入 blog.git 下的 hooks 目录
1
| cd /home/hexo/blog.git/hooks
|
新建 post-receive 并写入命令
要写入的内容如下:
1
| git --work-tree=/home/nginx/html/ --git-dir=/home/hexo/blog.git checkout -f
|
保存后赋予可执行权限
nginx配置
在这里我使用的是docker部署nginx
- 拉取镜像
- 创建挂载目录
1 2 3 4
| mkdir -p /home/nginx/conf mkdir -p /home/nginx/log mkdir -p /home/nginx/html
|
- 复制镜像配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| docker run --name nginx -p 9001:80 -d nginx
docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf
docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d
docker cp nginx:/usr/share/nginx/html /home/nginx/
docker ps -a
docker stop nginx
docker rm nginx
docker rm -f nginx
|
- 运行容器
1 2 3 4 5 6 7 8
| docker run \ -p 80:80 \ --name nginx \ -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /home/nginx/log:/var/log/nginx \ -v /home/nginx/html:/usr/share/nginx/html \ -d nginx:latest
|
1 2 3 4 5 6 7 8
| docker run -d -p 80:80 -p 443:443 --name nginx \ -v /home/nginx/ssl:/etc/nginx/ssl \ -v /home/nginx/log:/var/log/nginx \ -v /home/nginx/html:/usr/share/nginx/html \ -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \ nginx
|
- nginx配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| server { listen 80; server_name localhost;
location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $uri/ =404; }
error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }
|
ssl配置 1 2 3 4 5 6 7
| server { listen 443 ssl; server_name yourdomain.com; ssl_certificate /etc/nginx/ssl/yourdomain.com.pem; ssl_certificate_key /etc/nginx/ssl/yourdomain.com.key; ssl_session_timeout 5m; }
|
客户端配置
配置node环境
推荐使用nvm
nvm常用指令:
1 2 3 4 5 6 7 8 9 10 11 12
| nvm list
nvm list available
nvm install 12.18.3
nvm use 12.1
nvm alias default 12.18.3
nvm uninstall 12.18.3
|
镜像源配置
1 2
| nvm npm_mirror https://npmmirror.com/mirrors/npm/ nvm node_mirror https://npmmirror.com/mirrors/node/
|
安装hexo
1 2 3 4 5
| npm install -g hexo-cli npm install --save hexo-deployer-git
hexo init blog
|
修改远程配置
1 2 3 4
| deploy: - type: git repo: root@your server ip:/home/hexo/blog.git branch: master
|
完成
过程中可能需要输入服务器密码等操作.