-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
55 lines (41 loc) · 1.26 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
.PHONY: run check ruff database lint docker-build docker-push docker-buildx-prepare docker-release
# Get version from pyproject.toml
VERSION := $(shell grep -m1 version pyproject.toml | cut -d'"' -f2)
#IMAGE_NAME := lfnovo/open_notebook
IMAGE_NAME := registry.cn-hangzhou.aliyuncs.com/2456868764/open_notebook
PLATFORMS=linux/amd64
database:
docker compose --profile db_only up
run:
poetry run streamlit run app_home.py
lint:
poetry run python -m mypy .
ruff:
ruff check . --fix
# buildx config for multi-plataform
docker-buildx-prepare:
docker buildx create --use --name multi-platform-builder || true
# multi-plataform build with buildx
docker-build: docker-buildx-prepare
docker buildx build --pull \
--platform $(PLATFORMS) \
-t $(IMAGE_NAME):$(VERSION) \
--push \
.
# Build and push combined
docker-release: docker-build
# Check supported platforms
docker-check-platforms:
docker manifest inspect $(IMAGE_NAME):$(VERSION)
docker-update-latest: docker-buildx-prepare
docker buildx build \
--platform $(PLATFORMS) \
-t $(IMAGE_NAME):latest \
--push \
.
# Release with latest
docker-release-all: docker-release docker-update-latest
dev:
docker compose -f docker-compose.dev.yml up --build
full:
docker compose -f docker-compose.full.yml up --build