Go 语言学习手册
免费学习
完整知识体系
快速检索
Go语言学习手册《构建与部署(交叉编译)》:Go 可以编译为静态二进制文件,便于部署。 **构建:** ```bash go build -o myapp main.go # 当前平台 go build -ldflags="-s -w" # 去除调试信息...
部署与运维
构建与部署(交叉编译)
【详细说明 & 代码示例】
Go 可以编译为静态二进制文件,便于部署。
**构建:**
```bash
go build -o myapp main.go # 当前平台
go build -ldflags="-s -w" # 去除调试信息减小体积
```
**交叉编译:** 设置 GOOS 和 GOARCH。
```bash
GOOS=linux GOARCH=amd64 go build -o myapp_linux
GOOS=windows GOARCH=amd64 go build -o myapp.exe
GOOS=darwin GOARCH=arm64 go build -o myapp_mac
```
**支持的目标平台:** `go tool dist list` 查看所有组合。
**部署到容器(Docker):**
```dockerfile
FROM golang:1.21-alpine AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
FROM alpine:latest
WORKDIR /root/
COPY --from=builder /app/myapp .
EXPOSE 8080
CMD ["./myapp"]
```
**环境变量配置:** 使用 `os.Getenv("PORT")` 等。
**健康检查:** 在服务中添加 `/health` 端点。
**日志:** 使用标准库 `log` 或第三方如 `logrus`。
学习提示:建议安装 Go 环境(go.dev/dl),使用 VS Code 或 GoLand 编写代码,并熟练使用 go run、go build、go mod 等命令。
全部章节目录(共 30 个知识点)
Go 基础 (1个知识点)
变量与数据类型 (2个知识点)
控制流程 (2个知识点)
结构体与方法 (2个知识点)
接口(interface) (1个知识点)
指针 (1个知识点)
错误处理 (1个知识点)
包管理 (1个知识点)
并发:goroutine (1个知识点)
并发:channel (1个知识点)
同步原语 (1个知识点)
标准库 (2个知识点)
网络与 HTTP (1个知识点)
测试与性能 (1个知识点)
反射与泛型 (1个知识点)
CGO 与汇编 (1个知识点)
Web 框架 (1个知识点)
数据库操作 (1个知识点)
配置与日志 (1个知识点)
部署与运维 (1个知识点)
设计模式 (2个知识点)
进阶技巧 (2个知识点)
使用说明
- • 本手册涵盖 Go 语言从基础到并发实战、Web 服务的完整知识体系
- • 在搜索框输入关键词,快速定位相关知识点
- • 点击条目标题进入详情页,查看详细说明与代码示例
- • 页面按分类展示所有知识点,方便系统性学习
- • 建议安装 Go 环境并使用 VS Code 或 GoLand 进行实践