mirror of
https://git.victorphan.net/basketballcantho/ten-project.git
synced 2026-08-05 10:53:10 +07:00
hoàn thành docker compose giai đoạn 1
This commit is contained in:
Executable
+62
@@ -0,0 +1,62 @@
|
||||
#!/bin/bash
|
||||
# Push LMS images to GitHub Container Registry (GHCR)
|
||||
# Usage: ./push-ghcr.sh [tag]
|
||||
# Reads GITHUB_USER and GITHUB_TOKEN from .env
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
# Load .env
|
||||
if [ -f .env ]; then
|
||||
export $(grep -v '^#' .env | grep -E 'GITHUB_USER|GITHUB_TOKEN' | xargs)
|
||||
fi
|
||||
|
||||
TAG="${1:-latest}"
|
||||
|
||||
GITHUB_USER="${GITHUB_USER:?GITHUB_USER not set in .env}"
|
||||
GITHUB_TOKEN="${GITHUB_TOKEN:?GITHUB_TOKEN not set in .env}"
|
||||
|
||||
BACKEND_IMAGE="ghcr.io/${GITHUB_USER}/lms-backend:${TAG}"
|
||||
FRONTEND_IMAGE="ghcr.io/${GITHUB_USER}/lms-frontend:${TAG}"
|
||||
|
||||
echo "========================================"
|
||||
echo " LMS → GHCR Push"
|
||||
echo " Backend : $BACKEND_IMAGE"
|
||||
echo " Frontend: $FRONTEND_IMAGE"
|
||||
echo "========================================"
|
||||
echo ""
|
||||
|
||||
# ── 1. Login to GHCR ──────────────────────────────────────────────────────────
|
||||
echo "🔐 Logging in to ghcr.io ..."
|
||||
echo "$GITHUB_TOKEN" | docker login ghcr.io -u "$GITHUB_USER" --password-stdin
|
||||
|
||||
# ── 2. Build images ───────────────────────────────────────────────────────────
|
||||
echo ""
|
||||
echo "🔨 Building images..."
|
||||
cd "$(dirname "$0")"
|
||||
docker compose build
|
||||
|
||||
# ── 3. Tag for GHCR ───────────────────────────────────────────────────────────
|
||||
echo ""
|
||||
echo "🏷 Tagging images..."
|
||||
docker tag lms-backend:latest "$BACKEND_IMAGE"
|
||||
docker tag lms-frontend:latest "$FRONTEND_IMAGE"
|
||||
|
||||
# ── 4. Push ───────────────────────────────────────────────────────────────────
|
||||
echo ""
|
||||
echo "⬆ Pushing to GHCR..."
|
||||
docker push "$BACKEND_IMAGE"
|
||||
docker push "$FRONTEND_IMAGE"
|
||||
|
||||
echo ""
|
||||
echo "✅ Done! Images pushed:"
|
||||
echo " $BACKEND_IMAGE"
|
||||
echo " $FRONTEND_IMAGE"
|
||||
echo ""
|
||||
echo "📋 Add these to .env on the target machine:"
|
||||
echo " BACKEND_IMAGE=$BACKEND_IMAGE"
|
||||
echo " FRONTEND_IMAGE=$FRONTEND_IMAGE"
|
||||
echo ""
|
||||
echo "🚀 On the target machine:"
|
||||
echo " docker compose pull && docker compose up -d"
|
||||
Reference in New Issue
Block a user