Go项目踩坑:go get下载超时,goFrame框架下的go项目里将vue项目的dist同步打包发布,go项目打包并压缩

news2025/1/18 9:59:58

Go项目踩坑:go get下载超时,goFrame框架下的go项目里将vue项目的dist同步打包发布,go项目打包并压缩

  • go get下载超时
  • goFrame打包静态资源
    • vue项目打包
    • gf pack生成go文件
  • 静态资源使用
  • 打包发布go项目
    • 交叉编译,省略一些不必要的信息
    • 通过upx进行再一次的压缩
    • 将可执行文件上传至服务器

go get下载超时

//解决下载超时问题
go env -w GO111MODULE=on 
go env -w GOPROXY=https://goproxy.io,direct

goFrame打包静态资源

vue项目打包

npm run build

将打包生成的dist文件夹放入go项目中
在这里插入图片描述

gf pack生成go文件

将任意文件/目录打包为Golang源码文件,并且编译到可执行文件中,随着可执行文件发布

gf pack template packed/vue.go -n packed

template下的dist文件打包生成go的文件放在packed文件夹下
在这里插入图片描述

Add将content解压并添加到默认资源对象。prefix是非必要参数,表示存储到当前资源对象中的每个文件的前缀
生成的文件内容:
在这里插入图片描述

静态资源使用

gres.Dump()查看资源管理器内容
设置serverRoot= “template/dist”
通过import引入vue.go文件,可以随着build同步打包

import (
	"github.com/gogf/gf/v2/net/ghttp"
	"os"
	
	_ "foxess.ems/packed"
	"github.com/gogf/gf/v2/frame/g"
)
func main() {
	s := g.Server()
	s.SetPort(4444)
	router.Bind(s)
	//gres.Dump()
	s.SetServerRoot("template/dist")
	s.SetFileServerEnabled(true)
	s.BindHandler("/", func(r *ghttp.Request) {
		path, _ := os.Getwd()
		r.Response.WriteTpl(path+"/template/dist/index.html", g.Map{
			"host":    r.Host,
			"version": def.VERSION,
		})
	})
	s.Run()
}

在这里插入图片描述

打包发布go项目

交叉编译,省略一些不必要的信息

CGO_ENABLED=0 GOOS=linux GOARCH=arm go build -ldflags "-s -w"  //交叉编译,压缩

通过upx进行再一次的压缩

sudo upx -9 --brute foxess.ems

在这里插入图片描述

将可执行文件上传至服务器

scp foxess.ems xxx@xx.xxx.xx.xxx:/home/foxess.ems

运行

sudo ./foxess.ems

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1104160.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

黑客利用人工智能窃取医疗数据的 7 种方式

人工智能被描述为医疗保健行业的一把双刃剑。基于人工智能的系统可以分析大量数据并在早期和可治疗的阶段检测疾病,它们可以比任何人类更快地诊断症状,并且人工智能正在帮助药物开发,使新的救命药物得以识别并将其推向市场速度更快且成本显着…

三集合容斥原理整理

三集合容斥原理的三个公式都是怎么被推导出来的? - 刘明哲的回答 - 知乎 https://www.zhihu.com/question/465008307/answer/2251909478 你必须知道的行测数量知识(七)容斥问题 - 跟我考公吧的文章 - 知乎 https://zhuanlan.zhihu.com/p/4271…

基于若依框架的药品管理系统

若依框架每张表共有的五个属性: 更改若依后端代码时创建新的module,选择maven,继承ruoyi。 创建实体类时继承BaseEntity,这个类有创建人,创建时间等五个字段,这个类在其它模块中,需要在depende…

在.Core中用EF添加数据库实体类

首先安装dotnet-ef工具,否则提示: *无法执行,因为找不到指定的命令或文件。 可能的原因包括: *你拼错了内置的 dotnet 命令。 *你打算执行 .NET Core 程序,但 dotnet-ef 不存在。 你打算运行全局工具,但在路径上找不到…

SNAP对Sentinel-1预处理

SNAP对Sentinel-1预处理 一、导入数据 二、轨道校正 点击run开始处理 三、噪声去除 打开S-1 Thermal Noise Removal工具 如果选中了VH,就只会输出一个VH极化结果 四、辐射定标 Run 五、滤波处理 六、地形校正 这边的dem需要自己下载 dem下载地址 如果一格…

Orleans的成员管理和故障检测故障检测

Orleans的成员管理和故障检测故障检测 简介 Orleans框架是一个基于.NET平台的开源分布式系统框架,用于开发可扩展,高可用,高性能的云服务应用程序。它采用了Actor模型,将分布式系统中的各个节点抽象成为Actor,使得开…

Linux入门---页表的理解

目录标题 第一次认识页表第二次认识页表如何看待页表页表的大致构成 第一次认识页表 我们第一次认识页表是在介绍地址空间的时候,我们知道操作系统将内存划分为好几个区域,比如说栈区,堆区,未初始化区,已初始化区&…

力扣刷题 day47:10-17

1.位1的个数 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 1 的个数(也被称为汉明重量)。 方法一:逐个判断 利用n&1 #方法一:逐个…

重载、重写(覆盖)与重定义(隐藏)

重载、重写(覆盖)与重定义(隐藏) 重载隐藏(重定义)多态:重写(覆盖) 三者的区别 重载 必须是在一个作用域,函数名相同,参数不同(个数不…

C复习-基础知识

参考: 里科《C和指针》Bryant, Hallaron 《深入理解计算机系统》何昊,叶向阳《程序员面试笔试宝典》 从hello.c到可执行文件hello 在Unix系统中,从源文件到目标文件的转化是由编译器驱动程序完成的: root> gcc -o hello hel…

RTOS(4)自己的第一个FreeRTOS程序

创建两个任务 什么是任务呢? 对于整个单片机程序,我们称之为application,应用程序。 使用FreeRTOS时,我们可以在application中创建多个任务(task),有些文档把任务也称为线程 (thread)。 void Task1Function(void *p…

课时4作业3

Description 某人想将手中的一张面值100元的人民币换成10元、5元、2元和1元面值的票子。要求换正好40张,且每种票子至少一张。问:有几种换法? Input 无输入 Output 一个数,表示共有多少种换法 Sample Input 1 无 Sample O…

手写一个PrattParser基本运算解析器1: 编译原理概述

点击查看 基于Swift的PrattParser项目 编译原理概述 编译原理是我们每一个程序猿必须要了解的技能, 编译原理实际上并没有啥高深的技术, 我们如果在做业务开发, 也很少会用到编译开发的知识, 但是编译原理又是我们必备的基础知识之一. 所以我们需要对编译原理的内容有一个大概的…

76.C++ STL list容器

目录 1.什么是list容器 2.list构造函数 3. 元素插⼊和删除操作 4.大小操作 5.赋值操作 6.数据存取操作 7.反转、排序 1.什么是list容器 list 是 C 标准库提供的双向链表容器。它与 vector 和 deque 不同,不是连续的内存块,而是由节点组成的链表结…

C语言——二周目——数据在内存中的存储

目录 一、整数的存储方式 二、浮点数的存储方式 一、整数的存储方式 因为CPU只有加法器,所以对于整型来说,数据在内存中通常采用补码的方式进行储存。 在这里复习一下原码、反码、补码。 正数和无符号数的原码、反码、补码相同; 负数的原…

考察软件开发公司的能力

当公司需要与软件外包公司合作时需要考察软件开发公司的能力和水平,这会涉及到很多方面的因素。需要通过综合考察和了解软件开发公司的能力和水平,选择合适的合作伙伴,确保项目的成功交付。下面分享一些关键步骤和方法,希望对大家…

【JVM】JVM的垃圾回收机制

JVM的垃圾回收机制 对象死亡判断方法引用计数算法可达性分析算法 垃圾回收算法标记清除法复制算法标记整理算法分代算法 Java运行时内存的各个区域,对于程序计数器,虚拟机栈,本地方法栈这三个部分区域而言,其生命周期与相关线程有关,随线程而生,随线程而灭,并且这三个区域的内存…

Excel冻结窗格

1、冻结表格首行 点击菜单栏中的“视图”,选择“窗口”选项卡中的“冻结窗格”下的小三角,再选择“冻结首行”; 2.冻结表格首列 点击菜单栏中的“视图”,选择“窗口”选项卡中的“冻结窗格”下的小三角,再选择“冻结…

图扑智慧仓储数据可视化监控平台

随着市场竞争加剧和市场需求的不断提高,企业亟需更加高效、智能且可靠的仓储物流管理方式,以提升企业的物流效率,减少其输出成本,有效应对市场上的变化和挑战。 图扑软件应用自研 HT for Web 产品搭建的 2D 智慧仓储可视化平台&a…

【轻松搞定】Edge 或 Google 无法上网问题

目录 前言 一、解决 Edge 无法上网的问题 1.1 键盘按下 WIN R 或 右键开始标志,启动运行 1.2 输入 regedit 进入注册表管理 1.3 打开到 \HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft 位置下新建项 Edge 1.4 右键 Edge 新建 DWORD (32) 文件&#xff0c…