Golang 打包go项目部署到linux服务器

这篇具有很好参考价值的文章主要介绍了Golang 打包go项目部署到linux服务器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Golang 打包go项目部署到linux服务器

网上方法

我们可以在终端中输入以下代码:

set CGO_ENABLED=0
set GOOS=linux
set GOARCH=amd64
go build -o main-linux main.go

然后就会生成main-linux的二进制可执行文件,然后我们就可以将main-linux放到服务器中的任一目录中,然后我们就可以执行以下命令运行。

> chmod 777 main-linux
> ./main-linux

这是我们在网上可以搜索到的方法,但是我相信很多人通过这个方法尝试后发现,它并不能运行。我相信大家应该遇到过这种情况。

正确方法

我们在终端以下代码查看:

go env

我们可以看到以下内容:

set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\86184\AppData\Local\go-build
set GOENV=C:\Users\86184\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\86184\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\86184\go;E:\go\go;E:\go\go\lib
set GOPRIVATE=
set GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
set GOROOT=E:\go\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=E:\go\go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.18.2
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=D:\桌面\后台\awe\go.mod
set GOWORK=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\86184\AppData\Local\Temp\go-build3107814947=/tmp/go-build -gno-record-gcc-switches

我们可以看到,GOOS依然是windows,所以我们早linux运行windows的执行文件,自然无法正常执行。下面是正确的方法:

$env:GOOS="linux"
go build -o main-linux main.go

然后在服务器端执行

chmod 777 main-linux
./main-linux

如果想让其在后台运行可以执行:

setsid ./main-linux

好了,本文到此结束,感兴趣的可以关注博主哦,公众哈(程序员阿诺斯)文章来源地址https://www.toymoban.com/news/detail-603942.html

到了这里,关于Golang 打包go项目部署到linux服务器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue项目打包部署到服务器

    目录 一、打包项目  二、修改Nginx的配置 三、部署 四、开放端口号 1. 在 vue.config.js 文件中找到并修改,主要是publicPath 与outputDir 两项配置,若项目中有baseUrl,替换为publicPath (baseUrl, vue cli 3.3 已弃用) 2. 修改完成之后就可以进行打包了,在package.json文件找到下图中的打包命

    2024年02月05日
    浏览(69)
  • 打包前后端项目并部署至服务器

    打包命令: npm run build 执行完命令后,会生成一个名为 dist 的文件夹,这个就是打包好的前端项目。 2.1、执行 maven 的 clean ,删除项目编译创建的 target 文件夹 2.2、执行 package,将项目打包至 target 文件夹下 3.1、连接服务器 3.2、在根目录创建文件夹,并上传打包好的前后端项

    2024年01月23日
    浏览(64)
  • 前端如何将项目打包部署到服务器

      本篇文章从前端项目打包开始,逐步完成项目部署到服务器的操作,这次咱们采取的部署方案是通过vscode中Remote-SSH和SFTP两个插件实现项目部署到服务器,并在服务器上通过nginx代理将请求转发到对应的端口。   先将自己开发完成的本地项目进行打包,打包之后会产生一个

    2024年03月14日
    浏览(70)
  • Linux服务器Jenkins部署打包Android

    介绍 Jenkins 自动打包 Android 应用,后面介绍打包Flutter应用,然后介绍打包Android原生+Flutter混合应用 准备工作 1.jenkins服务器地址 账户密码 2.项目git地址 访问账号密码 3.ssh 链接服务器账户密码 安装Android环境 Android SDK下载 国内老版本下载地址 官网下载地址 下载到本地使用使

    2024年02月10日
    浏览(51)
  • Nuxt - 项目打包部署及上线到服务器流程(SSR 服务端渲染)

    网上大部分关于 Nuxt 打包部署教程真的是可以用五花八门来形容,这对于第一次接触的朋友简直是无从下手。 本文将尽可能详细的描述,打包部署及上线到服务器完整流程。 强烈建议您打开 官方文档,与本教程对照着,这有助于您更好的理解。 您需要先了解一下 Nuxt 命令及

    2024年02月09日
    浏览(60)
  • Vue+ElementUI项目打包部署到Ubuntu服务器中

    1、修改config/index.js中的assetsPublicPath: \\\'/\\\',修改为assetsPublicPath: \\\'./\\\' 2、在build/utils.js中增加publicPath: \\\'../../\\\' 3、打开终端,在根目录下执行npm run build进行打包,打包成功后会生成dist 4、将dist传输到服务器上(我已经把dist重命名为html) 5、服务器中如果没有nginx则安装nginx 6、配置

    2024年02月07日
    浏览(64)
  • 如何使用Vite打包和部署项目到服务器二级路由

    如果你想把你用Vite构建的项目部署到服务器的二级路由上,比如 http://demo.dev/admin/  ,你需要注意以下几个步骤: 基础路径base是指你的项目在服务器上的相对路径,比如你的项目部署在  http://demo.dev/admin/  上,那么你的基础路径就是 /admin/ 。你需要在两个地方配置基础路径

    2024年02月04日
    浏览(44)
  • 简单尝试将go项目用宝塔部署到服务器

    最近写了一个go项目的小demo打算放到服务器上,但是中间遇到一些问题,这里我记录下: 一、找一个文件夹将打包后的go项目放进去,如图 注意:如果项目中需要加载一些配置文件,由于打包后只有一个exe文件,需要手动将配置文件放到目录下,具体路径需要调试下  二、安

    2024年02月08日
    浏览(48)
  • Vite打包Vue3项目,利用宝塔部署到服务器

    按照如图的配置,将vite.config.js的 base 改为  /dist/ 然后npm run build 就会得到左边的这个dist文件夹,这就是打包好的文件 创建项目以及项目配置 我在服务器安装的php是5.6版本的,其他版本可以自己试一下 解决刷新404问题 上传成功之后,文件目录结构是这样的 (顺序不一定要

    2024年04月13日
    浏览(83)
  • SpringBoot前后端分离项目,打包、部署到服务器详细图文流程

    1.修改MySQL配置 修改MySQL地址,修改需要部署的数据名,账号和密码 2.修改Redis配置 修改Redis地址,修改需要部署的Redis密码(如果需要的话) 3.修改日志路径和字符集配置 修改logback.xml中日志的保存地址 重新设置日志字符集(防止放到服务器上去之后日志出现乱码) 1.上传前

    2024年02月13日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包