1 Star 2 Fork 3

oubayun / Hexo-Blog-Docker

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

文章声明:此文基于木子实操撰写
生产环境:node:13.10.1-alpine3.11 + Hexo v4.2.0 + NexT.Gemini v7.7.2
问题关键字:Hexo Next,Hexo Blog,Alpine Hexo Blog Docker


镜像说明

此Docker镜像由欧巴云基于node:13.10.1-alpine3.11 + Hexo v4.2.0 + NexT.Gemini v7.7.2打造。采用Traefik做为前端反向代理,使用ACME dnsChallenge功能进行Let's encrypt免费证书申请,并自动续期证书,通过 SSL Labs A+级SSL/TLS证书认证。使用Nginx进行静态页面站点发布,采用Gitee作为图床,并启用gzip压缩功能以提高网站访问速度。(Traefik功能未存在于此Docker镜像中,需要单独部署,此镜像仅支持http。)

**原自带HTTPS:**此Docker镜像由欧巴云基于node:13.10.1-alpine3.11 + Hexo v4.2.0 + NexT.Gemini v7.7.2打造。采用ACME dnsChallenge功能进行Let's encrypt免费证书申请,并使用定时任务实现证书自动续期。通过Nginx进行站点发布,在提高此博客系统并发访问能力的同时,通过 SSL Labs A+级SSL/TLS证书认证。

业务实现逻辑

站点主界面

版本说明

2020年3月27日主要功能说明 v1.0

  • 采用Alpine3.11构建Hexo v4.2.0+NexT.Gemini v7.7.2个人博客Docker镜像;
  • 新增基于Let's encrypt ACME DNS证书自动生成功能(腾讯云);
  • 新增inotifywait文件级修改监控,实现静态网站自动构建;
  • 基于Nginx进行网站发布,提高网站并发能力;
  • 配置rsync增量同步,实现vNote所写Markdown文档,直接sftp上传后自动构建部署功能;

2020年3月30日主要功能说明 v1.1

  • 添加Nginx gzip模块;
  • 配置站点启动Nginx gzip压缩功能;

2020年4月4日主要功能说明 v1.2

  • 修正inotifywait监控文件多事件下Markdown文档多次构建部署问题;
  • 新增基于vNote编写的Markdown文档sftp同步以后,_v_images自动替换路径为绝对路径功能;

2020年5月3日主要功能说明 v1.3

  • 本次更新主要针对SEO优化;
  • 添加网站地址(sitemap)功能;
  • 添加爬虫规范文件robots.txt;
  • 优化文章链接地址,自动翻译标题成拼音,并修改链接地址为: https://域名/文章拼音名.html;
  • 添加nofollow功能,并排除友情链接;

2021年4月4日主要功能说明 v1.4

  • 添加纯http模式Docker镜像,采用Traefik反向代理提供ACME证书管理与http跳转https,不再通过Docker本身提供ACME功能;
  • 优化字体,优先采用【Sarasa Mono SC】等宽字体,提高代码可读性;

2021年5月6日主要功能说明 v1.5

  • 添加百度专用sitemap: baidusitemap.xml;
  • 全局使用域名环境变量,确保镜像可以直接拿来使用,不需要再修改任何配置;

2021年5月13日主要功能说明 v1.6

  • 添加百度收录、Bing收录、Google收录主动推送功能;
  • 将全局_config.yml及主题_config.yml配置成外部挂载模式,使用者可以根据自己需求挂载对应配置文件即可;
  • 关于SEO插件设置,详细参考:hexo-submit-urls-to-search-engine 中文文档
  • 优化百度网站访问量统计管理,获取百度统计ID,管理--代码管理--代码获取;

计划功能实现说明 v1.7

  • 新增基于Let's encrypt ACME DNS证书自动生成功能(阿里云);
  • 新增基于阿里云、腾讯云 DNSAPI实现A记录解析自动添加;

部署方式

[推荐] docker-compose方式部署参考配置文件:

Gitee docker-compose.yaml

Github docker-compose.yaml

# 启动服务
docker-compose up -d
# 停止服务
docker-compose down

docker方式部署如下:

docker run -p 80:80 \
# 博文存放目录
-v /mdfiles:/blog/source/_posts \
# Google SEO 主动推送授权文件
-v /google_service_account.json:/blog/google_service_account.json \
# 公共配置文件
-v /_config.yml:/blog/_config.yml \
# 主题配置文件
-v /themes_config.yml:/blog/themes/next/_config.yml \
# 关于我们 页面
-v /index.md:/blog/source/about/index.md \
# 网站域名,不要带www,脚本会自动添加
-e "domainname=oubayun.com" \
# 百度 SEO 主动推送授权token
-e "baidutoken=xxx" \
# Bing SEO 主动推送授权Token
-e "bingtoken=xxx" \
# 百度网站访问量统计ID
-e "baiduanalytics=xxx"
oubayun/hexo-blog:latest

[不再更新] HTTPS docker方式部署如下:

docker run -p 80:80 -p 443:443 -v /mdfiles:/blog/source/_posts \
-e "domainname=www.oubayun.com" -e "baidutoken=xxxx" -e "DP_Id=xxxx" -e "DP_Key=xxxx" \
oubayun/hexo-blog:latest
MIT License Copyright (c) 2020 oubayun Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

此博客站点镜像基于Hexo v4.2.0 + NexT.Gemini v7.7.2构建而成 展开 收起
Docker 等 2 种语言
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Docker
1
https://gitee.com/oubayun/Hexo-Blog-Docker.git
git@gitee.com:oubayun/Hexo-Blog-Docker.git
oubayun
Hexo-Blog-Docker
Hexo-Blog-Docker
master

搜索帮助