Iris框架打包成二进制文件(包含静态文件)
简介最近在使用Golang的WEB框架Iris做了一个小的系统,但是里面有一些静态的资源,如css、js、html文件,如果只是通过go build打包的这些静态文件是打包不进去的,所以本文主要记录下如何将所以文件都打包的二进制文件中。
本文主要记录如何打包Golang的Iris框架写的WEB项目,目录结构如下:
assets css js templates index.html ...(其他的html文件) src ...(web相关的controller,model,service) main.go
这里贴一下main.go文件中如何加载的模板文件:
// 加载视图模板地址
tmpl := iris.HTML("./assets/templates", ".html")
app.RegisterView(tmpl)
上面的代码是不需要打包的基本代码结构。如果我们需要打包这里的静态文件,就需要安装一个第三方包,安装命令如下:
go get -u github.com/jteeuwen/go-bindata/... #后面三个点必须要,不是写错了
下面我们正式进入打包的流程。
1、首先通过go-bindata命令打包assets下的所有文件
go-bindata ./assets/...
打包完成后会生成一个bindata.go
2、修改main.go代码
// 加载视图模板地址
tmpl := iris.HTML("./assets/templates", ".html")
tmpl.Binary(Asset, AssetNames) //新添加这一行代码
app.RegisterView(tmpl)
在进行开发的时候先屏蔽掉新加的这样代码;
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题
OverflowBox组件运行子元素超出父容器的范围显示。当OverflowBox的最大尺寸大于子元素的时候,子元素可以完整显示,当小于子元素时候,就以最大尺寸为基准显示。最后需要加上对齐方式,完成布局。所以有些时候需要某个元素超过整个区域显示时候,就可以使用该组件。
最近在使用Golang的WEB框架Iris做了一个小的系统,但是里面有一些静态的资源,如css、js、html文件,如果只是通过go build打包的这些静态文件是打包不进去的,所以本文主要记录下如何将所以文件都打包的二进制文件中。
通过Nginx访问不带斜线的路径的时候,Nginx会出现301跳转,并且在这个过程中会出现一些其他问题。本文主要记录下在这过程中遇到的问题,以便后续查看。
apache ab 压力测试 https 报 SSL not compiled in; no https support
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。