Beego打包部署到Linux

栏目: Go · 发布时间: 5年前

内容简介:打开Terminal 定位到工程的使用命令打包成Windows 命令

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

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


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Ajax for Web Application Developers

Ajax for Web Application Developers

Kris Hadlock / Sams / 2006-10-30 / GBP 32.99

Book Description Reusable components and patterns for Ajax-driven applications Ajax is one of the latest and greatest ways to improve users’ online experience and create new and innovative web f......一起来看看 《Ajax for Web Application Developers》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具