目标:
写完一键上传并部署。(一个命令完成)
详细流程:
上传图片至七牛,上传 deploy 文件至Github公开库 以及 博客源代码 至Github 私有库,Daocloud 检测到commit 自动构建镜像并自动更新应用。
实现:
1.在public目录下放置Dockerfile文件:
1 2
| FROM daocloud.io/nginx COPY ./ /usr/share/nginx/html
|
2.在Daocloud里,创建新的代码构建,并设置成检测到commit就自动构建,再用这个镜像创建新应用,并设置自动更新
3.hexo根目录下创建 update.sh
(Mac/Linux下需修改执行权限: sudo chown 755 ./update.sh, Windows 需改成对应的bat脚本)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| #!/bin/sh # author: joway # 如果参数个数不等于0 if test $# -gt 0 then if test $1 = '-img' then cd ./source/photos/ node photo-tool.js cd ../../ echo 'Upload complete' else echo 'Parameter error' fi else echo 'No image needs upload' fi hexo clean hexo g && gulp hexo deploy git add . git commit -m 'update backup' git push origin master
|
命令使用:
1 2 3 4
| # 需要上传图片 ./update.sh -img #图片没改动, 只上传站点文件 ./update.sh
|
原文地址