加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

golang(6):使用beego + ace admin 开发后台系统 CRUD,并且使

发布时间:2020-12-16 19:12:36 所属栏目:大数据 来源:网络整理
导读:本文的原文连接是: https://blog.csdn.net/freewebsys/article/details/79884722 1,关于golang admin ace admin 是一个非常好的后台系统ui。 golang是我非常喜欢的一个语言。 并且写了一个admin系统。 写了个博客: https://blog.csdn.net/freewebsys/artic

本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/79884722

1,关于golang admin


ace admin 是一个非常好的后台系统ui。
golang是我非常喜欢的一个语言。
并且写了一个admin系统。
写了个博客:
https://blog.csdn.net/freewebsys/article/details/68955060
之前有哥们抱怨说没有看见代码。
我又重新整理了下。
是代码没有上传完整。
现在已经整理完整了,并且build 成镜像,上传到hub上面了。

github:
https://github.com/golangpkg/go-admin
docker hub:
https://hub.docker.com/r/golangpkg/go-admin/

使用scratch 空镜像打包,20MB+

2,代码说明


详细的之前也写过了。不重复了:
https://blog.csdn.net/freewebsys/article/details/68955060
下载镜像:

docker push docker.io/golangpkg/go-admin:latest
docker run --rm -it -p 8080:8080 docker.io/golangpkg/go-admin

效果:

3,遇到构建问题


因为是用的scratch 在编译golang 之后发现 错误:

standard_init_linux.go:190: exec user process caused "no such file or directory"

巨崩溃,因为就报了这一个错误,没有其他的。
发现是因为在编译golang 的时候要加上好多参数。

env GOOS=linux GOARCH=amd64 CGO_ENABLED=1
go build -ldflags "-linkmode external -extldflags -static" -o go-admin main.go

还是参考rancher学习的。
https://github.com/rancher/docker-from-scratch/blob/master/scripts/build

在构建中使用 golang:stretch 基础镜像编译,然后在把文件拷贝出来。
放到 scratch 镜像当中运行。
scratch 镜像是空镜像,使用 exec 进入不去。也不需要。

在编译 sqlite 数据库驱动的时候报错:

vendor/github.com/mattn/go-sqlite3/sqlite3_go18.go:18:10: undefined: SQLiteConn

发现是因为这个类是使用 cgo 调用的lib库,必须要libsqlite3-dev 开发包。
安装上编译报警告:

/go/src/github.com/freewebsys/go-admin/vendor/github.com/mattn/go-sqlite3/sqlite3-binding.c:35900: warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/tmp/go-link-879145469/000003.o: In function `mygetgrouplist':
/tmp/workdir/go/src/os/user/getgrouplist_unix.go:15: warning: Using 'getgrouplist' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking

不知道啥都打包进去了成了 20mb大小,要是没有sqlite 也就 10mb。

在push 到docker hub 上还遇到权限问题。
发现要加url 的全地址:

docker login -u golangpkg docker.io
docker push docker.io/golangpkg/go-admin:latest

golangpkg 是我申请的账号。

4,总结


在构建一个镜像的,只把编译好的文件拷贝上去。
然后把 conf views static 文件都拷贝上去就可以跑 beego了。
并且跑通了,构建,打docker镜像。
非常不错,资源小很多,下次要使用go-admin系统开发个报表工具。
统计工具啥的。超级快。开发快,启动快运行快。

本文的原文连接是:
https://blog.csdn.net/freewebsys/article/details/79884722

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读