Makefile简单脚本应用

老看人家用,我也试一试

主要想避免路径的问题:

例如:
我在 scripts/start.sh

kubectl apply -f deployments/k8s/conf.yaml

希望是以当前目标为路径,来执行这个 shell. 避免别人进入 scripts 目录后执行(那样会报错, 目录不对了)

所以 - Makefile 吧

v?=latest

local:
go run cmd/app/main.go
start:
bash scripts/start.sh
stop:
bash scripts/stop.sh
docker:
docker build -f build/Dockerfile -t todo/backend:$(v) .
docker tag todo/backend:$(v) dreambo8563docker/todo-backend:$(v)
docker push dreambo8563docker/todo-backend:$(v)
clean:
rm -f cmd/app/*log app

这里我用了一个变量 v,用于 docker 打包镜像设置 version 用. 默认 latest

使用
make local => 本地启动项目
make start => 执行k8s脚本
make stop => 执行k8s脚本
make docker v=v22 打包镜像, tag / push
make clean => 删除临时文件 (日志啥的)