Hexo环境准备
这里已经假设使用Hexo创建好了网站
- 配置 _config.yml 的deploy,将文章发布到私有git服务器
1 2 3 4
| deploy: type: git repo: your-repo.git branch: master
|
- 执行hexo d 将网站发布到git上
配置Drone任务
Drone安装与配置
- 到Drone激活仓库
- 基础配置
需要勾选 Trusted,因为目前没想到比较好的方式在单机上进行部署发布。所以通过不怎么安全的Volumes方式做目录映射来处理数据,以后有更好的方式再修改。
- 进入
.deploy_git
目录,创建.drone.yml配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| --- kind: pipeline type: docker name: your-job workspace: base: /homespace path: src steps: - name: deploy image: golang volumes: - name: cache path: /workspace commands: - mkdir -p /workspace/zh-blog/ - cd /workspace/zh-blog/ - rm -rf * - cp -r /homespace/src/* /workspace/zh-blog/ volumes: - name: cache host: path: /custom_dir/workspace
|
原理解释
通过volumes将宿主系统的 /custom_dir/workspace 目录映射到 cache 上
然后Drone的pipeline在执行脚本的时候,将git的内容覆盖过去
配置Nginx服务器
1 2 3 4 5 6 7
| server { listen 80; location / { root /custom_dir/workspace; index index.html; } }
|
发表一篇文章试试
写好文章后,通过 hexo d
进行发布, 在Drone平台上,看到构建任务
Great!!!