49 lines
1.4 KiB
Bash
Executable File
49 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
INFRA_DIR="$SCRIPT_DIR/.."
|
|
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m'
|
|
|
|
DOMAIN="${1:-wixur.ir}"
|
|
TAG="${2:-latest}"
|
|
DOCKER_USERNAME="${DOCKER_USERNAME:-dyolink}"
|
|
PUBLIC_BASE="https://${DOMAIN}"
|
|
|
|
echo -e "${BLUE}Building Dyolink images for ${PUBLIC_BASE}${NC}"
|
|
echo -e "${YELLOW}Docker Hub: ${DOCKER_USERNAME}/dyolink-*:${TAG}${NC}"
|
|
|
|
if ! docker info >/dev/null 2>&1; then
|
|
echo "Docker is not running."
|
|
exit 1
|
|
fi
|
|
|
|
echo -e "${YELLOW}Ensure you are logged in: docker login${NC}"
|
|
|
|
docker build \
|
|
-t "${DOCKER_USERNAME}/dyolink-backend:${TAG}" \
|
|
-t "${DOCKER_USERNAME}/dyolink-backend:latest" \
|
|
"${REPO_ROOT}/backend"
|
|
|
|
docker build \
|
|
--build-arg "NEXT_PUBLIC_API_URL=${PUBLIC_BASE}/api" \
|
|
--build-arg "NEXT_PUBLIC_APP_URL=${PUBLIC_BASE}" \
|
|
--build-arg "NEXT_PUBLIC_APP_NAME=Dyolink" \
|
|
-t "${DOCKER_USERNAME}/dyolink-frontend:${TAG}" \
|
|
-t "${DOCKER_USERNAME}/dyolink-frontend:latest" \
|
|
"${REPO_ROOT}/frontend"
|
|
|
|
docker push "${DOCKER_USERNAME}/dyolink-backend:${TAG}"
|
|
docker push "${DOCKER_USERNAME}/dyolink-backend:latest"
|
|
docker push "${DOCKER_USERNAME}/dyolink-frontend:${TAG}"
|
|
docker push "${DOCKER_USERNAME}/dyolink-frontend:latest"
|
|
|
|
echo -e "${GREEN}Pushed:${NC}"
|
|
echo " ${DOCKER_USERNAME}/dyolink-backend:${TAG}"
|
|
echo " ${DOCKER_USERNAME}/dyolink-frontend:${TAG}"
|