others linux服务器运维 django3 监控 k8s golang 数据库 大数据 前端 devops 理论基础 java oracle 运维日志

golang 项目目录代码布局

访问量:1400 创建时间:2020-04-21

统一的项目目录结构

golang-standards/project-layout: https://github.com/golang-standards/project-layout

目录 用处
/cmd main文件存放目录,通常 /cmd/your-project-name/main.go
/internal 私有应用程序和库代码,不希望其他人在其应用程序或库中导入的代码。
/pkg 可以共享的代码(例如/pkg/mypubliclib)
/vendor go mod vendor命令将为您创建/vendor目录,其他第三方库,使用 glide 工具来管理依赖
/api 协议文件
/web Web应用程序特定的组件:静态Web资产,服务器端模板和SPA
/configs 配置文件模板或默认配置。
/init 系统初始化(systemd,upstart,sysv)和进程管理器/主管(runit,supervisor)配置。
/scripts 用于执行各种构建,安装,分析等操作的脚本。
/build 包装和持续集成。将您的云(AMI),容器(Docker),操作系统(deb,rpm,pkg)软件包配置和脚本放在/build/package目录中。
/deployments IaaS,PaaS,系统和容器编排部署配置和模板(docker-compose,kubernetes / helm,mesos,terraform,bosh)
/test 其他外部测试应用程序和测试数据。随时根据需要构建/test目录。
/docs 设计和用户文档
/tools 此项目的支持工具。请注意,这些工具可以从/pkg和/internal目录导入代码。
/examples 您的应用程序和/或公共库的示例。
/third_party 外部帮助程序工具,分叉的代码和其他第三方工具(例如Swagger UI)。
/assets 与资源库一起使用的其他资产(图像,徽标等)。
登陆评论: 使用GITHUB登陆