Django-Hexo
本blog系统基于国光大佬基于 Hexo 重写的 django 项目模板二次开发 源项目链接:https://github.com/sqlsec/Django-Hexo-Matery
更新清单
- 支持docker容器部署
- 使用了以前博客的数据库字段
- 修改归档接口
- 修改搜索接口
- 添加redis对登录session和文章mkdown解析缓存
- editor编辑器图片上传路径调整
- 封面图片支持url链接地址
- 添加文章编辑按钮
- 添加自定义url
- 自定义站点设置
- 修复原有项目页面bug
- 全局变量文件调整
- 后台设置站点信息(待调试)
后期更多内容见
:
https://gitee.com/attacker/django-hexo/blob/master/README.md
新建数据库
CREATE database wy_web CHARACTER SET utf8; -- 创建库
CREATE USER 'admin'@'%' identified by 'passL1ve!'; -- 创建用户
GRANT ALL PRIVILEGES ON wy_web.* TO 'admin'@'%' WITH GRANT OPTION; -- 数据库赋权 ;WITH GRANT OPTION 选项表示可以将自己拥有的权限授权给别人,可不加
flush privileges; -- 刷新权限
settings.py 配置文件
# 数据库配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'wy_web',
'USER': 'admin',
'PASSWORD': 'passL1ve!',
'HOST': '192.168.0.102'
}
}
# django-redis缓存
CACHES = {
"default": {
"BACKEND": "django_redis.cache.RedisCache",
"LOCATION": "redis://127.0.0.1:6379/1",
"OPTIONS": {
"CLIENT_CLASS": "django_redis.client.DefaultClient",
"CONNECTION_POOL_KWARGS": {"max_connections": 100},
# "PASSWORD": "密码",
}
}
}
docker 方式启动
sudo docker run --name blog -d \
--restart=always \
-p 8000:8000 \
-e DB_HOST=attacker.club \
-e DB_PORT=3306 \
-e DB_USER=admin \
-e DB_PASSWORD='pass123456' \
-e DB_NAME=blog \
lghost/blog
# 启动容器
docker logs -f blog
# 打印日志
本地部署启动
bash run.sh dev
# 开发调试
bash run.sh prod
# 部署线上
备注
prod默认使用
supervisord
启动,没有的话化切换到nohup启动
run.sh # 启动脚本
which supervisord
if [ $? -eq 0 ]; then
pkill supervisord
supervisord
else
echo "Supervisord not installed"
nohup python manage.py runserver 0.0.0.0:8000 > /tmp/blog.log &
fi
# prod环境如果没有安装supervisord守护进程,默认用nohop来启动
文章:
后台管理:
自定义设置: