Go 开发后台管理系统,将前端资源一起编译,是不是很酷?! - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
IIInsomnia
V2EX    Go 编程语言

Go 开发后台管理系统,将前端资源一起编译,是不是很酷!

  •  
  •   IIInsomnia
    shenghui0779 2020-03-22 15:14:01 +08:00 6483 次点击
    这是一个创建于 2028 天前的主题,其中的信息可能已经有所发展或是发生改变。

    goadmin

    Go 开发后台管理系统,将前端资源一起编译,是不是很酷?!

    image

    image

    Features

    Requirements

    Go1.11+

    Usage

    • 下载 goadmin 并解压
    • 执行 go mod download
    • 创建数据库后导入 goadmin.sql
    • 创建配置文件 yiigo.toml 并配置数据库连接,参考 yiigo.toml.example

    编译前端资源

    • 安装 go.rice 工具,参考 go.rice
    • assetsviews 目录下分别执行 rice embed-go
    • 最后 go build -o goadmin

    注意

    项目使用了 gracehttp,Windows 下不支持,如需编译 Windows 版本,建议去掉

    默认登录账号:admin admin

    26 条回复    2020-03-24 10:08:28 +08:00
    jinsongzhao
        1
    jinsongzhao  
       2020-03-22 15:32:37 +08:00
    都打包一起部署适合不太变化的业务,后台管理正适合,还有产品化的东西。
    WFMS
        2
    WFMS  
       2020-03-22 15:36:14 +08:00
    已点亮
    Reficul
        3
    Reficul  
       2020-03-22 15:37:52 +08:00 via Android
    gobindata,afero 之类的很早就有了。
    vus520
        4
    vus520  
       2020-03-22 18:27:52 +08:00
    问下老板,有没有好用的数据库迁移的包,最好能根据 model 自动修改表结构
    solos
        5
    solos  
       2020-03-22 18:48:20 +08:00
    我用的这个 还是挺香的 https://github.com/gobuffalo/packr
    geekvcn
        6
    geekvcn  
       2020-03-22 18:59:09 +08:00 via Android   6
    一点都不酷,甚至有点蠢
    remon
        7
    remon  
       2020-03-22 19:23:46 +08:00 via Android   1
    好不容易大家各搞各的互不影响了,为什么要再搞到一起。要是搞离线应用还可以理解
    my3157
        8
    my3157  
       2020-03-22 19:34:01 +08:00   1
    @solos #5 buffalo 编译慢成一坨

    后端 API 单独部署, 纯静态网页放到对象存储, 再加上 CDN 不香么, 为啥要一起打包
    loading
        9
    loading  
       2020-03-22 19:47:51 +08:00 via Android
    用 quasar,多平台客户端直接出,不也挺香?
    mangogeek
        10
    mangogeek  
       2020-03-22 21:45:48 +08:00
    前后端分离的一般不这样吧
    zr8657
        11
    zr8657  
       2020-03-22 21:48:02 +08:00
    此 jsp 可待成追忆
    Jason0803
        12
    Jason0803  
       2020-03-22 22:45:17 +08:00
    真没必要。。。
    eslizn
    13
    eslizn  
       2020-03-22 22:50:18 +08:00
    说 cdn 的审下题,这个是管理端,另外不仅仅可以打包静态资源,还可以把模板也一起打包了,第一次知道这种做法是在 qor 里面。ps:多个管理端已上车,确实挺方便的,还能减少不必要的磁盘 io
    ajaxfunction
        14
    ajaxfunction  
       2020-03-22 22:50:53 +08:00
    我凡是这样部署,说明客户没有结清尾款,不想把源码给对方,等哪天是要一键关停的
    airplayxcom
        15
    airplayxcom  
       2020-03-23 08:31:02 +08:00 via iPhone
    html 加个换行 还得重新编译呗
    yrj
        16
    yrj  
       2020-03-23 09:28:10 +08:00 via iPad
    我就是这么做的,也是用的 rice
    wsseo
        17
    wsseo  
       2020-03-23 09:35:46 +08:00
    特定场景还是有用的
    ifoto
        18
    ifoto  
       2020-03-23 10:53:44 +08:00
    此法专治无赖偷源码怪
    duanquanyong
        19
    duanquanyong  
       2020-03-23 12:31:53 +08:00
    @airplayxcom

    我们我们就是这样用的,项目发布很方便,git 提交代码,持续集成编译发布。说不方便修改 html 的,你们是要在服务器上直接改么?还不是要提交代码到 git 后打 release 再发布?而且编译进二进制也可以兼容本地目录,当本地存在时用本地,本地不存在时用编译进去的,不是更香么。
    labulaka521
        20
    labulaka521  
       2020-03-23 13:41:04 +08:00
    这类工具多如牛毛
    lsls931011
        21
    lsls931011  
       2020-03-23 14:56:27 +08:00
    lsls931011
        22
    lsls931011  
       2020-03-23 14:58:59 +08:00
    为啥你们取的名字都这么像呢, 为啥你们想得也一样的呢
    zhiguang
        23
    zhiguang  
       2020-03-23 17:54:28 +08:00
    maven 一样有执行 node 命令的插件 ,后台前端一起打包
    Hyduan
        24
    Hyduan  
       2020-03-23 18:34:38 +08:00
    frp 也用了这种做法 用了 statik 库
    Chingim
        25
    Chingim  
       2020-03-23 20:27:24 +08:00 via Android
    @duanquanyong 我只改静态资源为啥还要走一次编译过程,就算 cicd 有缓存,拉取缓存也需要时间啊。

    前端走前端的构建流程,go 走自己的编译发布流程,这样不是更好吗?
    duanquanyong
        26
    duanquanyong  
       2020-03-24 10:08:28 +08:00
    @Chingim 如果你修改页面功能,同时涉及接口和 html,你需要保障同时发布,你需要匹配管理 html 代码和 api 服务的版本。当然我不是说两种模式哪一种更好,我只是在说各有优点,针对不同的业务场景,业务规模和业务要求,都有自己都价值。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5852 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 06:35 PVG 14:35 LAX 23:35 JFK 02:35
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86