go项目部署服务器保姆级教程(带图)

第一步把项目打包
1.确保本地goland的操作系统为linux

 1| go env

找到GOOS如果为window就修改为Linux

修改命令为
go env -w GOOS=linux


2.打包

在项目根目录下输入
go build main.go

然后项目根目录下会出现一个mian的二进制文件


第二步上传
1.打开xshell 连接上你的服务器,我用的是阿里云的服务器(保证你后端运行的端口号在服务器安全组上开放了)
例如我的是8889端口


2.在root下创建一个文件夹project用来存放想要部署的项目的所需要的文件

一、|  mkdir -p root/project/[项目名字]   
二、|  -p意思就是没有就创建一个
三、|  这个文件夹名字写成你的项目名字

3.用xftp把本地的main二进制文件和项目所用的运行环境的配置文件(.yaml文件)复制到上面创建的文件夹中


第三步运行
1.进入到创建的文件夹下面

1 |  cd /root/project/[项目名]

看到这几个就是传上了,你可以只有main和一个.yaml文件就可以


2.把main二进制文件给权限
上图中你的main传上去是白色的,因为他还没有权限

1 |  chmod +x main
2 |  这个就是给main文件权限 然后你的main会变成绿色

3.运行并制定运行环境和创建日志文件

1 |  nohup ./main -c config.dev.yaml > start.log 2>&1 &

4.查看进程

1 |  ps -ef|grep main

下面就是跑起来了

5.你可以看看日志文件 有没有报错

1 |  tail -f start.log

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你需要编写一个能够提供文件下载服务的Go语言文件服务器。你可以使用Go标准库中的`net/http`包来实现。具体来说,你需要编写一个HTTP处理函数,对于收到的HTTP GET请求,该处理函数会将请求的文件作为响应体返回给客户端。你还需要在服务器的命令行参数中指定文件服务器的根目录。 以下是一个简单的例子,演示如何使用Go语言实现一个文件服务器: ```go package main import ( "fmt" "net/http" "os" ) func getFileHandler(root string) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { path := r.URL.Path if path[0] == '/' { path = path[1:] } file := root + "/" + path f, err := os.Open(file) if err != nil { http.Error(w, err.Error(), http.StatusNotFound) return } defer f.Close() fi, err := f.Stat() if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) return } http.ServeContent(w, r, fi.Name(), fi.ModTime(), f) } } func main() { if len(os.Args) < 2 { fmt.Println("Usage: fileserver <root>") return } root := os.Args[1] http.HandleFunc("/", getFileHandler(root)) fmt.Println("Starting file server on port 8080...") err := http.ListenAndServe(":8080", nil) if err != nil { fmt.Println("Server error:", err) } } ``` 在上述代码中,我们首先定义了一个`getFileHandler`函数,该函数根据请求的URL路径返回对应的文件内容。其中,我们通过调用`os.Open`函数打开文件,如果打开失败,则返回`http.StatusNotFound`状态码。如果成功打开文件,则调用`http.ServeContent`函数将文件内容作为响应体返回给客户端。 在`main`函数中,我们从命令行参数中获取文件服务器的根目录,并将其传递给`getFileHandler`函数。然后,我们将该函数注册为HTTP处理函数,并开始监听8080端口。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值