Beego打包部署到Linux

本文介绍了如何将Beego应用打包并部署到Linux环境。首先在Terminal中定位到工程目录,使用go build命令打包。接着,将打包好的程序上传到Linux服务器,并通过特定命令使其在后台运行。通常需要安装screen工具来管理后台进程。同时,文章还提到了使用Nginx进行反向代理,以便在微服务架构中进行请求转发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Beego打包部署到Linux

  • 打包

打开Terminal 定位到工程的 main.go 文件夹目录

使用命令 bee pack -be GOOS=linux 进行打包

打包成Windows 命令 bee pack -be GOOS=windows

  • 部署

  1. 将打包好的程序,放到Linux上的某个目录。

  2. 将程序放在后台运行,这里使用screen命令进行操作。一般来说,Linux都会自带了screen,如果没有,则可通过命令 sudo apt-get install screen 或 sudo yum install screen进行安装。

  3. 安装完成screen后,使用命令screen -S ***进入到screen后台界面,其中打 *** 号的是给这个屏幕建一个别名,这样好知道后台部署的程序在哪个screen的容器内。

  4. 在进入到某个screen后,就可在这里进行运行你的程序的操作。这里使用nohup进行运行,如nohup ./app &进行运行。

  5. 执行结束后,按键盘 ctrl+A+D键进入到前台。

需要查看有哪些screen在使用,可使用screen -ls查看。如下:


[root@izwz9j9o61ggn****hbz ~]# screen -ls  
There is a screen on:
  6931.golang***Api (Detached)
1 Socket in /var/run/screen/S-root.
其中,6931即为该实例的ID号。后面即可通过 screen -r 6931 再次进入到该实例进行操作。若出现使用以上命令无法进入,则使用screen -d 6931 后再次使用-r命令即可进入。

这样,在linux上部署golang程序就算结束。

  • Nginx转发代理

有时候,我们的后台设计,可能采用的是微服务的架构,不同的功能点,调用不同的服务进行请求,这里就可以使用Nginx进行做统一的请求转发。

  • 打开Nginx的配置 nginx.conf文件,添加如下代码

server {

    listen      80;// 监听的端口

    server_name  .a.com; // 服务的域名

    charset utf-8;

    access_log  /home/a.com.access.log;

    location /(css|js|fonts|img)/ {

        access_log off;

        expires 1d;

        root "/path/to/app_a/static";

        try_files $uri @backend;

    }

    location / {

        try_files /_not_exists_ @backend;

    }

    location @backend {

        proxy_set_header X-Forwarded-For $remote_addr;

        proxy_set_header Host            $http_host;

        proxy_pass http://127.0.0.1:8080; //你刚才部署golang程序监听的端口

    }

}

  • 重启Nginx服务 systemctl restart nginx
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值