分享
  1. 首页
  2. 文章

Beego打包部署到Linux

兔宰子 · · 4440 次点击 · · 开始浏览
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

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 screensudo 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

有什么不对的地方,欢迎指正~~


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:兔宰子

查看原文:Beego打包部署到Linux

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

关注微信
4440 次点击
暂无回复
添加一条新回复 (您需要 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传

用户登录

没有账号?注册
(追記) (追記ここまで)

今日阅读排行

    加载中
(追記) (追記ここまで)

一周阅读排行

    加载中

关注我

  • 扫码关注领全套学习资料 关注微信公众号
  • 加入 QQ 群:
    • 192706294(已满)
    • 731990104(已满)
    • 798786647(已满)
    • 729884609(已满)
    • 977810755(已满)
    • 815126783(已满)
    • 812540095(已满)
    • 1006366459(已满)
    • 692541889

  • 关注微信公众号
  • 加入微信群:liuxiaoyan-s,备注入群
  • 也欢迎加入知识星球 Go粉丝们(免费)

给该专栏投稿 写篇新文章

每篇文章有总共有 5 次投稿机会

收入到我管理的专栏 新建专栏