开源精选 | 蘑菇博客(MoguBlog)

《开源精选》是我们分享Github、Gitee等开源社区中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期分享的蘑菇博客是一个基于微服务架构的前后端分离博客系统。

开源精选 | 蘑菇博客(MoguBlog)

项目简介

前台使用 Vue + Element , 后端使用spring boot + spring cloud + mybatis-plus进行开发,使用 Jwt + Spring Security做登录验证和权限校验,使用ElasticSearch和Solr作为全文检索服务,使用Github Actions完成博客的持续集成,文件支持上传七牛云。

开源精选 | 蘑菇博客(MoguBlog)

项目特点

  • 页面交互使用Vue2.x,极大的提高了开发效率。

  • 引入swagger文档支持,方便编写API接口文档。

  • 引入RabbitMQ 消息队列,用于邮件发送、更新Redis和Solr。

  • 引入JustAuth第三方登录开源库,支持Gitee、Github账号登录。

  • 引入ElasticSearch 和 Sol r作为全文检索服务,并支持可插拔配置。

  • 引入Github Actions工作流,完成蘑菇博客的持续集成、持续部署。

  • 引入七牛云对象存储,同时支持本地文件存储。

  • 引入RBAC权限管理设计,灵活的权限控制,按钮级别的细粒度权限控制,满足绝大部分的权限需求。

  • 引入Zipkin链路追踪,聚合各业务系统调用延迟数据,可以一眼看出延迟高的服务。

技术选型

开源精选 | 蘑菇博客(MoguBlog)

搭建蘑菇博客本地开发环境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 目录

开源精选 | 蘑菇博客(MoguBlog)

首先我们来查看一下docker-compose的目录结构

开源精选 | 蘑菇博客(MoguBlog)

将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/#/

蘑菇博客前后台展示

开源精选 | 蘑菇博客(MoguBlog)登录页

开源精选 | 蘑菇博客(MoguBlog)控制台

开源精选 | 蘑菇博客(MoguBlog)博客管理

开源精选 | 蘑菇博客(MoguBlog)博客编辑

开源精选 | 蘑菇博客(MoguBlog)博客归档

开源精选 | 蘑菇博客(MoguBlog)评论

—END—

原文始发于微信公众号(开源技术专栏):开源精选 | 蘑菇博客(MoguBlog)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/53972.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!