chore: update Docker build commands with git commit tags
This commit is contained in:
@@ -10,9 +10,18 @@ set positional-arguments
|
|||||||
PROJECT := "euchre-camp"
|
PROJECT := "euchre-camp"
|
||||||
|
|
||||||
# Docker registry (CasaOS local registry)
|
# Docker registry (CasaOS local registry)
|
||||||
REGISTRY := "dhg.lol:5000" # Update IP to your CasaOS server IP
|
REGISTRY := "registry" # Update to your registry host if needed
|
||||||
IMAGE_TAG := "latest"
|
IMAGE_TAG := "latest"
|
||||||
|
|
||||||
|
# Get git commit hash (short version)
|
||||||
|
GIT_COMMIT := `git rev-parse --short HEAD`
|
||||||
|
|
||||||
|
# Image tag with git commit
|
||||||
|
IMAGE_TAG_COMMIT := "{{GIT_COMMIT}}"
|
||||||
|
|
||||||
|
# Full image name with registry
|
||||||
|
REGISTRY_IMAGE := "{{REGISTRY}}/{{PROJECT}}"
|
||||||
|
|
||||||
# --- Variables ---
|
# --- Variables ---
|
||||||
# Database
|
# Database
|
||||||
DB_CONTAINER := "euchre-camp-postgres"
|
DB_CONTAINER := "euchre-camp-postgres"
|
||||||
@@ -76,11 +85,28 @@ seed:
|
|||||||
|
|
||||||
# --- Docker ---
|
# --- Docker ---
|
||||||
|
|
||||||
# Build the Docker image
|
# Build the Docker image (standard build)
|
||||||
docker-build:
|
docker-build:
|
||||||
@echo "Building Docker image {{PROJECT}}:{{IMAGE_TAG}}..."
|
@echo "Building Docker image {{PROJECT}}:{{IMAGE_TAG}}..."
|
||||||
docker build -t {{PROJECT}}:{{IMAGE_TAG}} .
|
docker build -t {{PROJECT}}:{{IMAGE_TAG}} .
|
||||||
|
|
||||||
|
# Build the Docker image with git commit tag
|
||||||
|
docker-build-commit:
|
||||||
|
@echo "Building Docker image {{PROJECT}}:{{IMAGE_TAG_COMMIT}}..."
|
||||||
|
docker build -t {{PROJECT}}:{{IMAGE_TAG_COMMIT}} .
|
||||||
|
|
||||||
|
# Build and tag with both latest and commit hash
|
||||||
|
docker-build-full: docker-build docker-build-commit
|
||||||
|
|
||||||
|
# Fast rebuild using Docker BuildKit cache
|
||||||
|
# Uses build cache to speed up rebuilds when only code changes
|
||||||
|
docker-rebuild-fast:
|
||||||
|
@echo "Fast rebuilding Docker image {{PROJECT}}:{{IMAGE_TAG}}..."
|
||||||
|
DOCKER_BUILDKIT=1 docker build \
|
||||||
|
--cache-from={{PROJECT}}:{{IMAGE_TAG}} \
|
||||||
|
-t {{PROJECT}}:{{IMAGE_TAG}} \
|
||||||
|
.
|
||||||
|
|
||||||
# Run the Docker container locally
|
# Run the Docker container locally
|
||||||
docker-run: docker-build
|
docker-run: docker-build
|
||||||
@echo "Running Docker container {{PROJECT}}..."
|
@echo "Running Docker container {{PROJECT}}..."
|
||||||
@@ -99,15 +125,17 @@ docker-clean: docker-stop
|
|||||||
|
|
||||||
# --- Deployment ---
|
# --- Deployment ---
|
||||||
|
|
||||||
# Tag image for local registry
|
# Tag image for registry
|
||||||
docker-tag:
|
docker-tag:
|
||||||
@echo "Tagging image for registry {{REGISTRY}}..."
|
@echo "Tagging image for registry..."
|
||||||
docker tag {{PROJECT}}:{{IMAGE_TAG}} {{REGISTRY}}/{{PROJECT}}:{{IMAGE_TAG}}
|
docker tag {{PROJECT}}:{{IMAGE_TAG}} {{REGISTRY_IMAGE}}:{{IMAGE_TAG}}
|
||||||
|
docker tag {{PROJECT}}:{{IMAGE_TAG_COMMIT}} {{REGISTRY_IMAGE}}:{{IMAGE_TAG_COMMIT}}
|
||||||
|
|
||||||
# Push image to local registry (CasaOS)
|
# Push image to registry
|
||||||
docker-push: docker-build docker-tag
|
docker-push: docker-build-full docker-tag
|
||||||
@echo "Pushing image to {{REGISTRY}}..."
|
@echo "Pushing image to {{REGISTRY}}..."
|
||||||
docker push {{REGISTRY}}/{{PROJECT}}:{{IMAGE_TAG}}
|
docker push {{REGISTRY_IMAGE}}:{{IMAGE_TAG}}
|
||||||
|
docker push {{REGISTRY_IMAGE}}:{{IMAGE_TAG_COMMIT}}
|
||||||
|
|
||||||
# --- CI/CD Pipeline Simulation ---
|
# --- CI/CD Pipeline Simulation ---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user