Golang123

golang123 是一个开源的社区系统,界面优雅,功能丰富,小巧迅速。 已在golang中文社区 得到应用,你完全可以用它来搭建自己的社区。

golang123的技术架构是前后端分离的, 前端使用vueiviewnode.jsnuxt等技术来开发, 后端使用gogormiris等技术来开发。golang123的技术选型也是超前的, 我们大胆得使用nuxt来做前后端同构渲染

golang123目前正处于活跃的开发中,预计十月初发布Beta版

💎 社区首页

🚀 安装

依赖的软件

软件 版本
node.js 8.4.0 (及以上)
golang 1.9 (及以上)
mysql 5.6.35 (及以上)
redis 4.0.1 (及以上)

克隆代码

golang123your/gopath/src/github.com/shen100/golang123

前端依赖的模块

golang123/website
npm install

如果安装失败,或速度慢,可尝试阿里的镜像

npm install --registry=https://registry.npm.taobao.org

后端依赖的库

//iris web框架
go get -u github.com/kataras/iris

//gorm 持久层框架
go get -u github.com/jinzhu/gorm

//redis客户端工具
go get github.com/garyburd/redigo/redis

//uuid生成工具
go get github.com/satori/go.uuid

//防XSS攻击
go get -u github.com/microcosm-cc/bluemonday

//markdown解析器
go get github.com/russross/blackfriday

⚙️ 配置

hosts

127.0.0.1

nginx

golang123/nginx/.example.conf.confgolang123/nginx/server.keygolang123/nginx/server.crt.conf
请修改
server {
    listen 80;
    server_name dev.golang123.com;

    access_log /path/logs/golang123.access.log; #请修改
    error_log /path/logs/golang123.error.log;   #请修改

    rewrite ^(.*) https://$server_name$1 permanent;
}

server {
    listen       443;
    server_name dev.golang123.com;

    access_log /path/logs/golang123.access.log; #请修改
    error_log /path/logs/golang123.error.log;   #请修改

    ssl on;
    ssl_certificate /path/cert/golang123/server.crt;     #请修改
    ssl_certificate_key /path/cert/golang123/server.key; #请修改
    
    ...
    
}

前端配置

golang123/website/config/index.example.jsindex.js

后端配置

golang123/config.example.jsonconfig.json
  1. 修改mysql连接地址及端口
  2. 修改mysql的用户名及密码
  3. 修改redis的连接地址及端口
  4. 修改域名邮箱的用户名及密码(golang123使用的是QQ域名邮箱)

🚕 运行

运行前端项目

golang123/website
npm run dev

运行后端项目

golang123
go run main.go

访问

浏览器中访问 https:///

❓问题

有任何问题或建议都欢迎提 issue