《开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期分享的蘑菇博客是一个基于微服务架构的前后端分离博客系统。
项目简介
前台使用 Vue + Element , 后端使用spring boot + spring cloud + mybatis-plus进行开发,使用 Jwt + Spring Security做登录验证和权限校验,使用ElasticSearch和Solr作为全文检索服务,使用Github Actions完成博客的持续集成,文件支持上传七牛云。
项目特点
-
页面交互使用Vue2.x,极大的提高了开发效率。
-
引入swagger文档支持,方便编写API接口文档。
-
引入RabbitMQ 消息队列,用于邮件发送、更新Redis和Solr。
-
引入JustAuth第三方登录开源库,支持Gitee、Github账号登录。
-
引入ElasticSearch 和 Sol r作为全文检索服务,并支持可插拔配置。
-
引入Github Actions工作流,完成蘑菇博客的持续集成、持续部署。
-
引入七牛云对象存储,同时支持本地文件存储。
-
引入RBAC权限管理设计,灵活的权限控制,按钮级别的细粒度权限控制,满足绝大部分的权限需求。
-
引入Zipkin链路追踪,聚合各业务系统调用延迟数据,可以一眼看出延迟高的服务。
技术选型
搭建蘑菇博客本地开发环境Docker
安装Docker
因为我们需要拉取镜像,所以需要在服务器提前安装好Docker,首先配置一下Docker的阿里yum源
cat >/etc/yum.repos.d/docker.repo<<EOF
[docker-ce-edge]
name=Docker CE Edge - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/edge
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
EOF
然后yum方式安装docker
# yum安装
yum -y install docker-ce
# 查看docker版本
docker --version
# 开机自启
systemctl enable docker
# 启动docker
systemctl start docker
配置docker的镜像源
cat >> /etc/docker/daemon.json << EOF
{
"registry-mirrors": ["https://b9pmyelo.mirror.aliyuncs.com"]
}
EOF
然后重启docker
systemctl restart docker
因为Docker容器之间,需要互相通信访问,所以我们需要创建我们的Docker网络
docker network create mogu
安装Docker Compose
Docker Compose是用来定义和运行多个Docker应用程序的工具。通过Compose,可以使用YAML文件来配置应用程序需要的所有服务,然后使用一个命令即可从YML文件配置中创建并启动所有服务。
把下载到的压缩文件解压后,然后使用Xftp工具,拷贝到虚拟机服务器上的 /usr/local/bin/ 目录下
# 进入到目录
cd /usr/local/bin
# 重命名
mv docker-compose-Linux-x86_64 docker-compose
# 加入执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 查看docker-compose版本
docker-compose -v
下载源码
蘑菇博客的源码
https://gitee.com/moxi159753/mogu_blog_v2
然后找到,docker-compose 目录
首先我们来查看一下docker-compose的目录结构
将docker-compose文件夹,拷贝服务器目录位置随意,我是拷贝到 /root/docker-compose 目录,然后给命令设置执行权限
# 进入目录
cd docker-compose
# 添加执行权限
chmod +x bin/middleware.sh
chmod +x bin/kernShutdown.sh
chmod +x bin/wait-for-it.sh
然后关闭CentOS的防火墙
systemctl stop firewalld.service
更多部署文档地址:
http://moxi159753.gitee.io/mogu_blog_doc/#/
蘑菇博客前后台展示
登录页
控制台
博客管理
博客编辑
博客归档
评论
—END—
原文始发于微信公众号(开源技术专栏):开源精选 | 蘑菇博客(MoguBlog)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/53972.html