0a9bb53f80
CI / docker (push) Successful in 2m7s
OpenAI-compatible AI gateway with Vue admin UI, multi-provider egress, ingress key governance, monitoring, and security controls. Co-authored-by: Cursor <cursoragent@cursor.com>
64 lines
1.8 KiB
Makefile
64 lines
1.8 KiB
Makefile
.PHONY: dev build build-web run tidy test recover docker-build docker-push docker-push-prebuilt
|
|
|
|
export GOPROXY ?= https://goproxy.cn,direct
|
|
export GOSUMDB ?= sum.golang.google.cn
|
|
export GOPRIVATE ?= git.rc707blog.top
|
|
export IMAGE_PREFIX ?= docker.1panel.live/library/
|
|
export APK_MIRROR ?= mirrors.aliyun.com
|
|
export DOCKER_PLATFORM ?= linux/amd64
|
|
export LUMINARY_IMAGE ?= registry.rc707blog.top/rose_cat707/luminary:latest
|
|
|
|
dev:
|
|
@echo "Start backend: go run ./cmd/luminary"
|
|
@echo "Start frontend: cd web && npm run dev"
|
|
|
|
build-web:
|
|
cd web && npm install --registry=https://registry.npmmirror.com && npm run build
|
|
|
|
build: build-web
|
|
go build -o luminary ./cmd/luminary
|
|
|
|
recover:
|
|
go build -o luminary-recover ./cmd/luminary-recover
|
|
|
|
run: build
|
|
./luminary
|
|
|
|
tidy:
|
|
go mod tidy
|
|
|
|
test:
|
|
go test ./...
|
|
|
|
docker-build:
|
|
docker buildx build --platform $(DOCKER_PLATFORM) \
|
|
-t $(LUMINARY_IMAGE) \
|
|
--build-arg IMAGE_PREFIX=$(IMAGE_PREFIX) \
|
|
--build-arg APK_MIRROR=$(APK_MIRROR) \
|
|
--build-arg GOPROXY=$(GOPROXY) \
|
|
--build-arg GOSUMDB=$(GOSUMDB) \
|
|
--load \
|
|
.
|
|
|
|
docker-push:
|
|
docker buildx build --platform $(DOCKER_PLATFORM) \
|
|
-t $(LUMINARY_IMAGE) \
|
|
--build-arg IMAGE_PREFIX=$(IMAGE_PREFIX) \
|
|
--build-arg APK_MIRROR=$(APK_MIRROR) \
|
|
--build-arg GOPROXY=$(GOPROXY) \
|
|
--build-arg GOSUMDB=$(GOSUMDB) \
|
|
--push \
|
|
.
|
|
|
|
docker-push-prebuilt: build-web
|
|
mkdir -p .docker-bin
|
|
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags="-s -w" -o .docker-bin/luminary ./cmd/luminary
|
|
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags="-s -w" -o .docker-bin/luminary-recover ./cmd/luminary-recover
|
|
docker buildx build --platform $(DOCKER_PLATFORM) \
|
|
-f docker/Dockerfile.prebuilt \
|
|
-t $(LUMINARY_IMAGE) \
|
|
--build-arg IMAGE_PREFIX=$(IMAGE_PREFIX) \
|
|
--build-arg APK_MIRROR=$(APK_MIRROR) \
|
|
--push \
|
|
.
|