# Simple Makefile to build and run Docker container for PSLA using log2sql.py PORT=5000 APP_NAME=psla APP_DIR=psla # HELP # This will output the help for each task # thanks to https://marmelab.com/blog/2016/02/29/auto-documented-makefile.html .PHONY: help help: ## This help. @awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST) .DEFAULT_GOAL := help # DOCKER TASKS # Build the container build: ## Build the container docker build -t $(APP_NAME) $(APP_DIR) build-nc: ## Build the container without caching docker build --no-cache -t $(APP_NAME) $(APP_DIR) run: ## Run container on port # Create logs dir if it doesn't already exist so it can be mounted as a volume in the container mkdir -p $(APP_DIR)/logs docker run --rm -p=$(PORT):$(PORT) --name="$(APP_NAME)" -v `pwd`/$(APP_DIR)/logs:/logs $(APP_NAME) up: build run ## Run container on port (Alias to run) stop: ## Stop and remove a running container docker stop $(APP_NAME); docker rm $(APP_NAME)