make: fix docker-run by using local docker build and add docker-buildx for multi-arch; pass VITE_COUCHDB_* build args
This commit is contained in:
17
Makefile
17
Makefile
@@ -14,7 +14,7 @@ DOCKER_IMAGE ?= $(APP_NAME):latest
|
||||
|
||||
export
|
||||
|
||||
.PHONY: help install clean dev build test docker-build docker-run docker-clean info couchdb-up couchdb-down
|
||||
.PHONY: help install clean dev build test docker-build docker-buildx docker-run docker-clean info couchdb-up couchdb-down
|
||||
|
||||
# Default target
|
||||
.DEFAULT_GOAL := help
|
||||
@@ -71,10 +71,21 @@ test-watch: ## Run unit tests in watch mode
|
||||
|
||||
docker-build: ## Build Docker image for local development
|
||||
@echo "Building Docker image for $(APP_NAME): $(DOCKER_IMAGE)"
|
||||
@docker build \
|
||||
--build-arg NODE_ENV=production \
|
||||
--build-arg VITE_COUCHDB_URL=$${VITE_COUCHDB_URL} \
|
||||
--build-arg VITE_COUCHDB_USER=$${VITE_COUCHDB_USER} \
|
||||
--build-arg VITE_COUCHDB_PASSWORD=$${VITE_COUCHDB_PASSWORD} \
|
||||
-t $(DOCKER_IMAGE) .
|
||||
|
||||
docker-buildx: ## Build multi-arch image with buildx (set PUSH=true to push)
|
||||
@echo "Building multi-arch Docker image for $(APP_NAME): $(DOCKER_IMAGE)"
|
||||
@docker buildx build --platform linux/amd64,linux/arm64 \
|
||||
--build-arg NODE_ENV=production \
|
||||
--build-arg APP_NAME=$(APP_NAME) \
|
||||
-t $(DOCKER_IMAGE) --push .
|
||||
--build-arg VITE_COUCHDB_URL=$${VITE_COUCHDB_URL} \
|
||||
--build-arg VITE_COUCHDB_USER=$${VITE_COUCHDB_USER} \
|
||||
--build-arg VITE_COUCHDB_PASSWORD=$${VITE_COUCHDB_PASSWORD} \
|
||||
-t $(DOCKER_IMAGE) $$([ "$${PUSH}" = "true" ] && echo "--push") .
|
||||
|
||||
docker-run: ## Build and run Docker container
|
||||
@echo "Building and running $(APP_NAME) container: $(DOCKER_IMAGE)"
|
||||
|
||||
Reference in New Issue
Block a user