当前位置: 首页 > news >正文

go前后端开源项目go-admin,本地启动

https://github.com/go-admin-team/go-admin

教程

1.拉取项目

 git clone https://github.com/go-admin-team/go-admin.git

2.更新整理依赖

go mod tidy会整理依赖,下载缺少的包,移除不用的,并更新go.sum。

# 更新整理依赖
go mod tidy

3.编译项目

# 编译项目
go build

go build报错

PS D:\go\go-admin> go build
# gorm.io/plugin/dbresolver
C:\Users\wusan\go\pkg\mod\gorm.io\plugin\dbresolver@v1.4.7\dbresolver.go:147:5: unknown field PreparedSQL in struct literal of type gorm.PreparedStmtDB

这个错误通常是由于 ​GORM 主库版本​ 与 ​插件版本不兼容​ 导致的。

升级版本

go get -u gorm.io/gorm@v1.25.0

4.修改配置文件config/setting.yml

MySQL已安装,推荐教程   Windows下安装MySQL)https://blog.csdn.net/wusandaofwy/article/details/126129012

config/setting.yml 修改如下 

修改为自己的user 密码和dbname

  database:
    # 数据库类型 mysql, sqlite3, postgres, sqlserver
    # sqlserver: sqlserver://用户名:密码@地址?database=数据库名
    driver: mysql
    # 数据库连接字符串 mysql 缺省信息 charset=utf8&parseTime=True&loc=Local&timeout=1000ms
    source: root:123456@tcp(127.0.0.1:3306)/goadmin?charset=utf8&parseTime=True&loc=Local&timeout=1000ms

5.初始化数据库

./go-admin.exe migrate -c config/settings.dev.yml

6.启动数据库服务

go-admin.exe server -c config/settings.yml

 7.前端部分

7.1拉取

# clone
$ git clone https://github.com/go-admin-team/go-admin-ui.git

 7.2安装依赖

$ cd go-admin-ui/

$ npm install  # npm install --registry=https://registry.npm.taobao.org   # 国内请使用

# 或者使用
$ cnpm install

# 上述两种安装报错或者node16+使用yarn进行安装
$ yarn

安装失败改一下node版本,建议使用nvm控制版本

https://www.go-admin.pro/intro/advanced/tutorial0230

# 首先需要检查 node 版本,是否是 16.15.0
node -v
# 如果不是,需要安装 16.15.0 版本的 node

# 安装依赖 这里需要注意如果安装速度过慢 可以配置淘宝镜像
# 如果安装包出现错误
# 需要删除 yarn.lock 或者 package.json.lock 和 node_modules
# 删除后重新安装即可
npm install
# 如果报错或者使用
yarn install

npm install · Issue #182 · go-admin-team/go-admin-ui · GitHub

还是报错,参考上面issue解决,再npm i

npm install --legacy-peer-deps

7.3运行

# 启动项目
npm run dev

  App running at:
  - Local:   http://localhost:9527/
  - Network: http://192.168.19.199:9527/ 

8.成功运行

相关文章:

  • 在Linux上使用APT安装Sniffnet的详细步骤
  • 哈希表和STL —— unorderde_set/unordered_map【复习笔记】
  • 深入理解 JavaScript 中的 call、apply 和 bind
  • 《C++深拷贝与浅拷贝:内存安全的拷贝构造函数实践》
  • 【AI认知】大语言生成模型和推理模型的技术差异和应用区别
  • 2025.3.1有关c++类的学习
  • 【树莓派学习】树莓派3B+的安装和环境配置
  • 【数据库初阶】索引(1)
  • Redis Desktop Manager(Redis可视化工具)安装及使用详细教程
  • 随机树算法 自动驾驶汽车的路径规划 静态障碍物(Matlab)
  • ragflow-mysql 启动失败案例分析
  • Linux常见基本指令(一)
  • LeetCode--76. 最小覆盖子串
  • 算法训练(leetcode)二刷第三十八天 | 1143. 最长公共子序列、1035. 不相交的线、53. 最大子数组和、392. 判断子序列
  • 实验:k8s+keepalived+nginx+iptables
  • 鸿蒙5.0实战案例:基于原生能力获取视频缩略图
  • PyQt——信号与槽
  • 橙心同步助手更新,,支持博客园、头条和语雀
  • 数据结构--队列(C语言实现)
  • 【UCB CS 61B SP24】Lecture 17 - Data Structures 3: B-Trees 学习笔记
  • “典孝急乐批麻蚌赢”:互联网“八字真言”与当代赛博赢学
  • 跨文化戏剧的拓荒者与传承者——洪深与复旦剧社的百年回响
  • 在对国宝的探索中,让美育浸润小学校园与家庭
  • 茅台回应“茅台1935脱离千元价位带竞争”:愿与兄弟酒企共同培育理性消费生态
  • 从采购到销售!市场监管总局指导行业协会防控肉品风险
  • 2025年度十大IP!IP SH荣膺文化综合类TOP10