Compare commits
2 Commits
7d7dc4eb39
...
cdc6b1d7e3
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cdc6b1d7e3 | ||
|
|
79e973f390 |
@@ -1,6 +1,6 @@
|
|||||||
# syntax=docker/dockerfile:1
|
# syntax=docker/dockerfile:1
|
||||||
|
|
||||||
ARG BUN_VERSION=1.0.0
|
ARG BUN_VERSION=1.2.20
|
||||||
|
|
||||||
FROM oven/bun:${BUN_VERSION} AS base
|
FROM oven/bun:${BUN_VERSION} AS base
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|||||||
61
s3-nodejs-api/Makefile
Normal file
61
s3-nodejs-api/Makefile
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
.PHONY: build build-docker build-docker-prod clean help install start dev test lock-update
|
||||||
|
|
||||||
|
# Variables
|
||||||
|
IMAGE_NAME ?= media-streamer
|
||||||
|
IMAGE_TAG ?= latest
|
||||||
|
BUN_VERSION ?= 1.2.20
|
||||||
|
IMAGE_REGISTRY ?= gitea-gitea-ssh.taildb3494.ts.net/will
|
||||||
|
|
||||||
|
help: ## Show this help message
|
||||||
|
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
|
||||||
|
|
||||||
|
lock-update: ## Update bun.lock file
|
||||||
|
bun install
|
||||||
|
|
||||||
|
install: lock-update ## Install dependencies
|
||||||
|
|
||||||
|
build: ## Build the TypeScript app
|
||||||
|
bun run build
|
||||||
|
|
||||||
|
dev: ## Start the app in development mode with watch
|
||||||
|
bun run start:dev
|
||||||
|
|
||||||
|
start: build ## Build and start the app in production mode
|
||||||
|
bun run start
|
||||||
|
|
||||||
|
test: ## Run tests
|
||||||
|
bun test
|
||||||
|
|
||||||
|
clean: ## Clean build artifacts
|
||||||
|
rm -rf dist/
|
||||||
|
|
||||||
|
build-docker: ## Build Docker image for multiple architectures (amd64, arm64)
|
||||||
|
docker buildx build \
|
||||||
|
--platform linux/amd64 \
|
||||||
|
--build-arg BUN_VERSION=$(BUN_VERSION) \
|
||||||
|
-t $(IMAGE_REGISTRY)/$(IMAGE_NAME):$(IMAGE_TAG) \
|
||||||
|
.
|
||||||
|
|
||||||
|
build-docker-prod: ## Build Docker image for multiple architectures with production optimizations
|
||||||
|
docker buildx build \
|
||||||
|
--platform linux/amd64,linux/arm64 \
|
||||||
|
--build-arg BUN_VERSION=$(BUN_VERSION) \
|
||||||
|
-t $(IMAGE_REGISTRY)/$(IMAGE_NAME):$(IMAGE_TAG) \
|
||||||
|
--push \
|
||||||
|
.
|
||||||
|
|
||||||
|
build-docker-local: ## Build Docker image for current architecture only (faster for local testing)
|
||||||
|
docker build \
|
||||||
|
--build-arg BUN_VERSION=$(BUN_VERSION) \
|
||||||
|
-t $(IMAGE_REGISTRY)/$(IMAGE_NAME):$(IMAGE_TAG) \
|
||||||
|
.
|
||||||
|
|
||||||
|
push-docker: ## Push Docker image to registry (requires IMAGE_REGISTRY set)
|
||||||
|
@if [ -z "$(IMAGE_REGISTRY)" ]; then \
|
||||||
|
echo "Error: IMAGE_REGISTRY not set"; \
|
||||||
|
exit 1; \
|
||||||
|
fi
|
||||||
|
docker tag $(IMAGE_NAME):$(IMAGE_TAG) $(IMAGE_REGISTRY)/$(IMAGE_NAME):$(IMAGE_TAG)
|
||||||
|
docker push $(IMAGE_REGISTRY)/$(IMAGE_NAME):$(IMAGE_TAG)
|
||||||
|
|
||||||
|
all: clean install build build-docker ## Clean, install, build app, and build Docker image
|
||||||
Reference in New Issue
Block a user