陆陆续续已经更新到了第十三期,基本的知识点都已经讲解的差不多,那么最后一步就是对项目进行部署。这里我们将项目部署到 Linux 的服务器 Docker 上。本期知识点包括交叉编译和Docker部署。
?交叉编译
什么是交叉编译呢?交叉编辑简单的说就是一个平台生成另一个平台的可执行程序。我们大部分开发环境是 windows 或者 macOS ,当然也有使用 linux 用户(其实在 windows 上更加推荐使用 WSL 进行开发),而我们的上线服务器一般都是 linux,所以我们要进行项目的交叉编译。Go 中对交叉编译相对简单,我们只需要进行简单的设置即可完成交叉编译。
打开我们的项目根目录,打开终端,设置 GOOS 和 GOARCH。
在 windows 下编译为 linux 程序。
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build -o out/linux/gin_hello .
这里的 go build -o out/linux/gin_hello
是指将编译后的文件输出到 out/linux 下,编译后的二进制叫做 gin_hello 。
我将命令写到了 .bat
方便处理,不用每次都执行贴一下这几行命令。
在项目根目录下新建立 build.bat
,然后执行该文件。当然,很多工程或者项目使用 Makefile
进行的编译
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build -o out/linux/gin_hello .
exit
执行完该文件就会在 out/linux 下出现 gin_hel