Golang Go语言 [开源]golang123 是使用 vue、nuxt、node.js 和 Golang 开发的社区系统

发布于 1周前 作者 yuanlaile 最后一次编辑是 5天前 来自 Go语言
Github: https://github.com/shen100/golang123

Golang123

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

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

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

💎 社区首页

🖥 Golang123 线上机器配置

| CPU | 1 核 |
|:---------|:-------:| | 内存 | 1GB | | 带宽 | 1Mbps |

🚀 安装

依赖的软件

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

克隆代码

golang123的代码克隆到 gopath 的 src/github.com/shen100 目录下,即your/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 dev.golang123.com

nginx

  1. golang123/nginx/dev.golang123.com.example.conf文件改名为dev.golang123.com.conf,然后拷贝到 nginx 的虚拟主机目录下
  2. golang123/nginx/server.keygolang123/nginx/server.crt拷贝到某个目录下
  3. 打开 nginx 的虚拟主机目录下的dev.golang123.com.conf文件,然后修改访问日志和错误日志的路径,即修改 access_log 和 error_log。
  4. 修改证书路径为 server.key 和 server.crt 所在的路径,即修改 ssl_certificate 和 ssl_certificate_key

请参考如下配置中请修改标记的地方:

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.js文件重命名为index.js

后端配置

golang123/config.example.json文件重命名为config.json,然后修改以下配置:

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

🚕 运行

运行前端项目

进入golang123/website目录,然后运行

npm run dev

运行后端项目

进入golang123目录,然后运行

go run main.go

访问

浏览器中访问 https://dev.golang123.com/

❓问题

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

👥 技术交流

QQ 群: 32550512
QQ 群中的消息很可能还没被看到,就被后来的消息给冲掉,有问题还是建议大家开 issue

💰 赞助

如果你觉得golang123这个项目还不错的话,可以通过扫描下面的二维码来赞助我, 金额任意,无上限😃

License

GPL
Copyright (c) 2013-present, shen100


Golang Go语言 [开源]golang123 是使用 vue、nuxt、node.js 和 Golang 开发的社区系统

更多关于Golang Go语言 [开源]golang123 是使用 vue、nuxt、node.js 和 Golang 开发的社区系统的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html

9 回复

应该避免使用有 license 问题的 iris

https://github.com/avelino/awesome-go/pull/1135

更多关于Golang Go语言 [开源]golang123 是使用 vue、nuxt、node.js 和 Golang 开发的社区系统的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


哈哈哈哈哈 这不是隔壁的 https://cnodejs.org/

说的很明白,支持一下。

貌似没有对移动设备做适配?

没看懂 golang 在这干嘛。。。核心不是 node club 那一套么?

移动端是另一套,还没上线

只是样式借鉴了 node club,后台是 golang 写的

恕我直言,用了 orm 搞这一套基本上后端没啥工作了。。。

针对帖子中提到的“Golang Go语言[开源]golang123是使用vue、nuxt、node.js和Golang开发的社区系统”,以下是我的专业回复:

golang123确实是一个值得关注的开源社区系统,它巧妙地结合了Go语言和前端技术的优势,为开发者提供了一个高效、易用的社区平台。

在技术架构上,golang123采用了前后端分离的设计,前端使用了vue、iview、node.js、nuxt等技术来开发,这些技术保证了前端界面的响应速度和用户体验;后端则使用了Go语言以及gin、gorm等技术,Go语言的并发处理能力和简洁的语法结构非常适合构建高性能的后端服务。

此外,golang123还支持插件扩展,开发者可以根据实际需求定制化自己的社区平台,这进一步增强了系统的灵活性与实用性。其界面设计优雅,功能丰富,小巧迅速,在golang中文社区中得到了广泛的应用与好评。

对于希望构建自己社区平台的开发者而言,golang123无疑提供了一个理想的解决方案。无论是初学者还是资深开发者,都能在这里找到有价值的内容,共同交流和分享Go语言的技术心得。

回到顶部