GIVE US A STAR PLEASE MY SIR !!! | 请给我们一个 Star 求求了 !!!
GuGoTik是 第六届字节跳动青训营后端进阶 实战项目,题目为编写一个小型的抖音后端。
如果你想了解更多信息,请等待 青训营结束后 ,GuGoTik 会提供完整的项目开发文档,请给本项目一个 Star ~
项目开发者:这是一群来自五湖四海的 Contributors,来自于 WHU,HNU,NJUPT。
特别感谢:
以及有事而无法参与项目的小伙伴:
- docker: 基础镜像,为项目的Dockerfile提供基础镜像,或者是为 K8S 技术设施提供基础镜像
- scripts: 构建脚本
- src: 项目源代码
- constant: 项目常量
- extra: 外部服务依赖
- idl: idl文件
- models: 数据模型
- rpc: Rpc 代码
- services: 微服务实例
- storage: 存储相关
- utils: 辅助代码
- web: 网关代码
- test: 项目测试
- 其他单文件:Docker Compose 文件和使用的demo环境变量
- Redis (Cluster)
- PostgreSQL
- Consul
- OpenTelemetry Collector
- FFMpeg
- Go
项目推荐使用以下可观测性基础设施:
- Jaeger
- Victoria Metrics
- Grafana
Profile 性能分析:
- Pyroscope
由 梦想珈 RyzeBot 提供自动推送至K8S集群构建流程。
PR 至 Dev 分支,经过基于 Action 的 UnitTest + Code Analysis + Lint + BuildCheck 后,可合并至 endymx 分支。
endymx 分支会自动触发 CD,构建镜像并推送,由 RyzeBot 完成向 K8S 的推送,自动部署。
GuGoTik可以自动捕获环境变量,也可以以 .env 文件的方式手动提供,覆盖顺序为:
.env > 环境变量 > DefaultEnv > EmptyEnv(即默认提供空值,由GuGoTik提供运行时特判)
运行 scripts 文件夹下 build-all 脚本,然后运行 run-all 脚本即可,请选择自己平台支持的脚本。
docker pull epicmo/gugotik:latest
通过交互式终端进入容器后自行运行 GateWay 文件夹下和 Services 文件夹下程序
在项目根目录运行:
注:相关的账号密码设置在 .env.docker.compose 文件查看
docker compose up -d