feat: dockerfile

This commit is contained in:
2026-04-11 18:58:05 +02:00
parent f23640a1c6
commit f70a893fd4
3 changed files with 36 additions and 2 deletions
+16
View File
@@ -0,0 +1,16 @@
FROM python:3.14-alpine
WORKDIR /app
VOLUME [ "/app/data" ]
RUN PIP_ROOT_USER_ACTION=ignore python3 -m pip install uv
COPY uv.lock pyproject.toml ./
RUN uv sync --no-dev
COPY main.py ./
COPY src ./src/
ENTRYPOINT [ "uv", "run", "--no-sync", "main.py" ]
+14 -1
View File
@@ -8,6 +8,8 @@ endif
RUFF ?= $(UV) run ruff
TY ?= $(UV) run ty
DOCKER ?= docker
DOCKER_TAG ?= localhost/stapler:latest
# DOCS
@@ -52,10 +54,21 @@ ruff-format-check: .venv ## ruff format (check only)
ty: .venv ## ty check
@$(TY) check
.PHONY: docker-build
docker-build: ## docker build
@$(DOCKER) build . -t $(DOCKER_TAG)
.PHONY: docker-run
docker-run: docker-build ## docker run
@$(DOCKER) run -it -p 8080:8080 -v ./data:/app/data $(DOCKER_TAG)
# ACTIONS
.PHONY: format
format: ruff-fix ruff-format ## format project
.PHONY: lint
lint: ruff ruff-format-check ty ## lint project
lint: ruff ruff-format-check ty ## lint project
.PHONY: start
start: docker-run ## start server in localhost
+6 -1
View File
@@ -17,7 +17,7 @@ options:
## TODO
- [x] basic http server
- [ ] docker container
- [x] docker container
- [ ] env instead of args when available
- [ ] POST gzip data into /data/xxx
- [ ] DELETE request
@@ -43,11 +43,16 @@ ruff-fix ruff check (and fix)
ruff-format ruff format
ruff-format-check ruff format (check only)
ty ty check
docker-build docker build
docker-run docker run
format format project
lint lint project
start start server in localhost
Environment:
UV = uv
RUFF = uv run ruff
TY = uv run ty
DOCKER = docker
DOCKER_TAG = localhost/stapler:latest
```