feat: make flat-stack-presejpacky standalone with Docker and Makefile
This commit is contained in:
46
drills/flat-stack-presejpacky/Makefile
Normal file
46
drills/flat-stack-presejpacky/Makefile
Normal file
@@ -0,0 +1,46 @@
|
||||
# Variables
|
||||
IMAGE_NAME = flat-stack-presejpacky
|
||||
PORT = 3000
|
||||
|
||||
.PHONY: help install build dev start clean lint docker-build docker-run docker-stop
|
||||
|
||||
help:
|
||||
@echo "Available commands:"
|
||||
@echo " make install - Install project dependencies"
|
||||
@echo " make dev - Run the application locally in development mode (Vite)"
|
||||
@echo " make build - Build the production assets"
|
||||
@echo " make start - Run the production build locally using Express"
|
||||
@echo " make clean - Remove build artifacts (dist/ and server.js)"
|
||||
@echo " make lint - Run TypeScript type checks"
|
||||
@echo " make docker-build - Build the Docker image"
|
||||
@echo " make docker-run - Run the Docker image locally on port $(PORT)"
|
||||
@echo " make docker-stop - Stop and remove the Docker container"
|
||||
|
||||
install:
|
||||
docker run -it --rm -v $$(pwd):/app -v /app/node_modules -w /app node:24-alpine npm install
|
||||
|
||||
dev:
|
||||
docker run -it --rm -p $(PORT):$(PORT) -v $$(pwd):/app -v /app/node_modules -w /app node:24-alpine sh -c "npm install && npm run dev"
|
||||
|
||||
build:
|
||||
docker run -it --rm -v $$(pwd):/app -v /app/node_modules -w /app node:24-alpine sh -c "npm install && npm run build"
|
||||
|
||||
start:
|
||||
docker run -it --rm -p $(PORT):$(PORT) -v $$(pwd):/app -v /app/node_modules -w /app node:24-alpine sh -c "npm install && npm run start"
|
||||
|
||||
clean:
|
||||
docker run -it --rm -v $$(pwd):/app -w /app node:24-alpine npm run clean
|
||||
|
||||
lint:
|
||||
docker run -it --rm -v $$(pwd):/app -v /app/node_modules -w /app node:24-alpine sh -c "npm install && npm run lint"
|
||||
|
||||
docker-build:
|
||||
docker build -t $(IMAGE_NAME) .
|
||||
|
||||
docker-run:
|
||||
docker run -d -p $(PORT):$(PORT) --name $(IMAGE_NAME) $(IMAGE_NAME)
|
||||
@echo "Container is running at http://localhost:$(PORT)"
|
||||
|
||||
docker-stop:
|
||||
docker stop $(IMAGE_NAME) || true
|
||||
docker rm $(IMAGE_NAME) || true
|
||||
Reference in New Issue
Block a user