这两天看到一些go语言的视频,其中go语言能一键编译成可执行文件让我很感兴趣
于是就试了一下,发现效果确实不错
像下面这样就能编译成很轻量的二进制可执行文件
$env:GOOS="linux" # 目标系统: Linux
$env:GOARCH="amd64" # 目标架构: 64位
$env:CGO_ENABLED="0" # 静态编译: 无需 C 库依赖
# 编译: 去除调试信息(-s -w)以减小体积,输出为 ha-trajectory
go build -ldflags="-s -w" -o ha-trajectory ./cmd/server
把文件丢进scratch,一个很小的docker镜像就做好了!
FROM scratch
COPY ha-trajectory /ha-trajectory
EXPOSE 8080
ENTRYPOINT ["/ha-trajectory"]
拿ai做了一个根据http请求读写数据库的小工具(为了将homeassistant给的经纬度信息持久存储和画路线图),就占用了一点内存,相比别的镜像少多了!
