内容简介:linux 上安装golang 项目的方式按照官网的设置GOPATH
直接部署:
linux 上安装golang 项目的方式按照官网的 https://golang.org/doc/install#install (要梯子)的方式,安装 go 运行环境到/usr/local/go/bin 下。
设置GOPATH
发现如果按照官方给的安装方法只指定GOROOT的路径,于是自己新建一个目录gopath 作为GOPATH 的目录,并且设置环境变量(export GOPATH=/newhome/go/gopath)。在gopath下新建3个文件夹(模仿windows GOPATH的方式,也是go语言的工作环境目录) 分别为 src、pkg、bin目录。
go语言的工作空间其实就是一个文件目录,目录中必须包含src、pkg、bin三个目录。
其中src目录用于存放go源代码,pkg目录用于package对象,bin目录用于存放可执行对象。
GOPATH目录指明了你go代码的工作空间的位置,不能与GOROOT目录相同,而且GO代码必须位于工作空间内。
添加go代码库
src的源码代码可以go get github.com/** 的方式获取,也可以从复制别的地方项目到src目录下。于是乎,我就把我windows的下面的src所有文件夹复制到 linux 下面,免去重新下载的时间。
部署自己项目
上传自己的项目到src目录下与github.com,golang.org等其他目录平级
如下图所示:
goonlinemusic就是我的项目 然后进入我项目执行go build main.go 会编译一个linux 可执行程序。
最后执行 ./main 就行了。
如果想让项目在后台执行:执行 nohup ./main & ,这样就可以程序在后台运行了。
基于nginx部署:
在使用nginx 部署时,首先要明白nginx 反向代理的原理。下面简要提一下就是。访问一个链接,例如127.0.0.1:8000
nginx部署在服务器对8000 进行监听。nginx 收到访问请求后把请求交给192.168.0.1:8001进行处理(go程序在对另一台ip为192.168.0.1的机器8001 端口监听)。
突然觉着这是不是很蛋疼,go能直接部署在服务器提供web服务吗?为什么还要搞个nginx 。因为内网代理和负载均衡。
具体去百度或者上知乎搜一下,他们讲的比我好。
进入 nginx的conf的目录,打开nginx.conf
添加下面的文件到nginx.conf 即可,最后重启nginx 服务。
关键的一点:web的资源文件的请求由nginx 来完成,不需要后台服务器进行处理。
server { listen 8000; server_name localhost; charset utf-8; access_log /newhome/go/nginxlog/access.log; #如果是css,js|fonts|png|svg|html|txt 资源文件 nginx 直接处理,不提交到后台让go处理。 # nginx 会在root 对应的目录下 去找这些资源文件 location ~ \.(css|js|fonts|png|svg|html|txt)$ { access_log on; expires 1d; root /newhome/go/gowork/goonlinemusic/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:8001; } }参考连接 https://beego.me/docs/deploy/nginx.md
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 【Vue项目总结】项目nginx部署
- CentOS 部署 flask项目
- Docker 部署Python项目
- 【前端打包部署】谈一谈我在SPA项目打包=>部署的处理
- 「实战篇」开源项目docker化运维部署-后端java部署(七)
- jenkins自动化项目部署实战
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
浪潮之巅(第2版)(套装上下册)
吴军 / 人民邮电出版社 / 2013-7 / 80.00元
一个企业的发展与崛起,绝非只是空有领导强人即可达成。任何的决策、同期的商业环境,都在都影响着企业的兴衰。《浪潮之巅》不只是一本历史书,除了讲述科技顶尖企业的发展规律,对于华尔街如何左右科技公司,以及金融风暴对科技产业的冲击,也多有着墨。此外,这本书也着力讲述很多尚在普及或将要发生的,比如微博和云计算,以及对下一代互联网科技产业浪潮的判断和预测。因为在极度商业化的今天,科技的进步和商机是分不开的。 ......一起来看看 《浪潮之巅(第2版)(套装上下册)》 这本书的介绍吧!