51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

基于golang的开源论坛bbs-go的搭建步骤

# 基于 golang 的开源论坛 bbs-go 的搭建步骤 {#基于-golang-的开源论坛-bbs-go-的搭建步骤}

本文总结了基于 golang 开发的开源论坛 bbs-go 的搭建步骤。

# 1. 下载代码 {#_1-下载代码}

git clone https://github.com/mlogclub/mlog.git

# 2. 初始化数据库 {#_2-初始化数据库}

执行数据库初始化脚本,初始化数据。
数据库初始化脚本路径: mlog/.docker-compose/mysql/db/docker-entrypoint-initdb.d

该初始化脚本只会初始化必要的数据库表和数据,剩余的表结构会在程序启动时自动完成初始化。

# 3. 运行后台服务 {#_3-运行后台服务}

后台服务所在目录为 mblog/server/
后台基于 golang 开发, 注意配置本地的 golang 环境为 1.15 版本,该项目不支持低版本。

# 3.1 基于模板创建配置文件 {#_3-1-基于模板创建配置文件}

cp ./mblog/server/bbs-go.example.yaml cp ./mblog/server/bbs-go.yaml

# 3.2 修改./mblog/server/bbs-go.yaml 的配置 {#_3-2-修改-mblog-server-bbs-go-yaml-的配置}

  • 修改网站域名

    BaseUrl: https://forum.sofineday.com # 网站域名

  • 修改数据库配置

    MySqlUrl: root:123456@tcp(localhost:3306)/bbsgo_db?charset=utf8mb4&parseTime=True&loc=Local

修改该配置中的用户名、密码、主机。

  • 修改文件存储方式
    修改文件存储方式为本地存储。

文件存储可以选择 aliyun oss,也可以选择本地存储。不想花钱,当然要配置为本地存储了

Uploader:
  # 启用上传方式, "aliyun或oss"表示使用Aliyun Oss, 否则使用本地存储
  Enable: local

  # 本地文件上传
  Local:
    Host: https://cdn.forum.sofineday.com/ # 上传文件域名
    Path: /data/forum/storage # 上传目录

还需为本地存储的根目录分配一个服务(使用 nginx 为文件根目录配置个虚拟主机即可)。

执行如下命令编译生成可执行文件 bbs-go。

./server/bbs-go --config ./server/bbs-go.yaml

服务端口: 8082

# 4. 运行前端页面服务 {#_4-运行前端页面服务}

后台服务所在目录为 mblog/site/

低版本的 node 会报错,建议安装高版本,如 v15.0.1

# 4.1 安装依赖包 {#_4-1-安装依赖包}

进入目录./site 后,执行 npm install

# 4.2 修改配置文件 {#_4-2-修改配置文件}

修改./mblog/site/nuxt.config.js,配置后台服务的 api 访问地址:

  proxy: {
    '/api/':
      process.env.NODE_ENV === 'production'
        ? 'https://forum.sofineday.com'

# 4.3 运行 {#_4-3-运行}

进入目录./site 后,执行 npm run dev
则启动前端服务,服务端口 3000

该步骤可能会运行失败,报"无法找到 nuxt 命令"错误,解决方法: 删除./node_modules/目录,改用 yarn 命令安装依赖即可。

# 5. 验证 {#_5-验证}

访问http://localhost:3000
效果如下

管理员账号: admin/123456 细节请前往官方文档 (opens new window)

赞(5)
未经允许不得转载:工具盒子 » 基于golang的开源论坛bbs-go的搭建步骤