栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

如何在liunx环境下部署goweb项目

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在liunx环境下部署goweb项目

前言

Go部署到服务器相对其他语言来说很简单,只需要将所有应用代码打包成一个二进制文件即可,不需要像额外的运行环境,例如向Java还需要jvm。

环境:Linux操作系统,centos7

本机环境:macOS,goland

1、拉取最新代码
git clone https://github.com/你们自己管理代码的仓库
2、构建应用
  • 首先看一下自己的开发环境 go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/mac/Library/Caches/go-build"
GOENV="/Users/mac/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/mac/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/mac/go"
GOPRIVATE=""
GOPROXY="https://goproxy.io,https://goproxy.cn,https://goproxy.io/zh/,https://proxy.golang.com.cn,direct"
GOROOT="/Users/mac/go/go1.17"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/Users/mac/go/go1.17/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.17"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/mac/go/src/project/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/rt/vqv9n31n3nxbdqnf5333nftr0000gn/T/go-build3049549800=/tmp/go-build -gno-record-gcc-switches -fno-common"

  • 第二步:编译可执行文件(交叉编译)

64位操作系统的架构就是amd64,M1就是M1的,goos是编译之后运行在哪的环境

Mac 下编译 Linux 和 Windows 64项目文件
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

Windows 下编译 Mac 和 Linux 64位可执行程序
SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build 

生成一个project可执行文件
3、部署到服务器上
  • 将文件拖拽到自己的项目目录下,例如

  • 编写start.sh脚本

    kill -9 "$(pgrep -f project)" #杀死之前的进程
    chmod +x /home/project/place/server/project # 给目标文件加权
    nohup /home/project/place/server/project -c /home/project/place/server/config.dev.yaml > start.log  2>&1 & # 使用nohup后台运行
    
  • 之后运行一下sh脚本即可

    cd /home/project/place/server
    sh start.sh
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/992042.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号