From 1e8b78974f2a40ffe8d7b1d97b094d599e7fd012 Mon Sep 17 00:00:00 2001 From: Mikeu Dev Date: Tue, 13 Jan 2026 09:38:24 +0700 Subject: [PATCH] fix:workflow --- .github/workflows/ci.yml | 12 +++++----- MIGRATION.md | 16 ++++++------- README.md | 50 ++++++++++++++++++++-------------------- scripts/cleanup.sh | 6 ++--- scripts/setup.sh | 22 +++++++++--------- 5 files changed, 53 insertions(+), 53 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e0a366f..21aa5c2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: uses: actions/checkout@v4 - name: Validate Docker Compose - run: docker-compose config + run: docker compose config - name: Validate Nginx config run: | @@ -116,7 +116,7 @@ jobs: sudo mv kubeconform /usr/local/bin/ - name: Validate Manifests - run: kubeconform -summary -output text k8s/ + run: kubeconform -summary -output text -ignore-missing-schemas k8s/ # Integration test integration-test: @@ -128,12 +128,12 @@ jobs: uses: actions/checkout@v4 - name: Start all services - run: docker-compose up -d + run: docker compose up -d - name: Wait for services to be ready run: | sleep 30 - docker-compose ps + docker compose ps - name: Test Nginx reverse proxy run: | @@ -162,11 +162,11 @@ jobs: - name: Show logs on failure if: failure() - run: docker-compose logs + run: docker compose logs - name: Cleanup if: always() - run: docker-compose down -v + run: docker compose down -v # Deployment (optional - uncomment when ready) # deploy: diff --git a/MIGRATION.md b/MIGRATION.md index 43a1ddf..57f8752 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -7,13 +7,13 @@ Panduan migrasi CloudLab dari Docker Compose ke Kubernetes. | Aspek | Docker Compose | Kubernetes | |--------|---------------|------------| | **Orkestrasi** | Single host | Multi-node cluster | -| **Penskalaan (Scaling)** | Manual (`docker-compose scale`) | Otomatis (HPA) | +| **Penskalaan (Scaling)** | Manual (`docker compose scale`) | Otomatis (HPA) | | **Ketersediaan Tinggi** | Terbatas | Built-in (replika, pemulihan mandiri) | | **Load Balancing** | Dasar | Lanjutan (Services, Ingress) | | **Penyimpanan** | Docker volumes | PersistentVolumes | | **Jaringan** | Bridge network | Service mesh, Network Policies | | **Konfigurasi** | Environment variables | ConfigMaps, Secrets | -| **Deployment** | `docker-compose up` | `kubectl apply` | +| **Deployment** | `docker compose up` | `kubectl apply` | | **Monitoring** | Setup manual | Integrasi native | ## Pemetaan Komponen @@ -119,13 +119,13 @@ depends_on: 1. **Audit Setup Saat Ini** ```bash # List running services - docker-compose ps + docker compose ps # Cek penggunaan resource docker stats # Ekspor konfigurasi - docker-compose config > docker-compose-backup.yml + docker compose config > docker-compose-backup.yml ``` 2. **Build dan Tag Images** @@ -296,10 +296,10 @@ depends_on: 2. **Hentikan Docker Compose** ```bash # Hentikan services - docker-compose down + docker compose down # Simpan volumes untuk backup - # docker-compose down -v # Hanya jika ingin menghapus volumes + # docker compose down -v # Hanya jika ingin menghapus volumes ``` 3. **Verifikasi Trafik Produksi** @@ -318,10 +318,10 @@ Jika terjadi masalah, rollback kembali ke Docker Compose: kubectl delete -k k8s/ # 2. Jalankan Docker Compose -docker-compose up -d +docker compose up -d # 3. Verifikasi services -docker-compose ps +docker compose ps ``` ## Masalah Umum (Common Issues) diff --git a/README.md b/README.md index 99727b2..d2fdbb2 100644 --- a/README.md +++ b/README.md @@ -63,12 +63,12 @@ CloudLab dapat di-deploy dengan dua metode: 3. **Jalankan semua layanan** ```bash - docker-compose up -d + docker compose up -d ``` 4. **Verifikasi layanan berjalan** ```bash - docker-compose ps + docker compose ps ``` ## Endpoint Layanan @@ -291,14 +291,14 @@ cloud-lab/ ```bash # Semua services -docker-compose logs -f +docker compose logs -f # Service tertentu -docker-compose logs -f nodejs-app -docker-compose logs -f python-app -docker-compose logs -f nginx -docker-compose logs -f prometheus -docker-compose logs -f grafana +docker compose logs -f nodejs-app +docker compose logs -f python-app +docker compose logs -f nginx +docker compose logs -f prometheus +docker compose logs -f grafana ``` ## Operasi (Kubernetes) @@ -329,7 +329,7 @@ kubectl get hpa -n cloudlab-apps ```bash # Docker Compose -docker-compose down +docker compose down # Kubernetes ./k8s/scripts/cleanup.sh @@ -345,7 +345,7 @@ kubectl delete -k k8s/ 3. Konfigurasi reverse proxy di `nginx/nginx.conf` 4. Tambahkan scrape config di `monitoring/prometheus.yml` 5. Tambahkan ke CI/CD pipeline di `ci/github-actions.yml` (matrix strategy) -6. Rebuild: `docker-compose up -d --build` +6. Rebuild: `docker compose up -d --build` **Kubernetes:** 1. Buat direktori di `k8s/apps//` @@ -359,14 +359,14 @@ kubectl delete -k k8s/ ```bash # Semua services -docker-compose logs -f +docker compose logs -f # Service tertentu -docker-compose logs -f nodejs-app -docker-compose logs -f python-app -docker-compose logs -f nginx -docker-compose logs -f prometheus -docker-compose logs -f grafana +docker compose logs -f nodejs-app +docker compose logs -f python-app +docker compose logs -f nginx +docker compose logs -f prometheus +docker compose logs -f grafana ``` ## Monitoring @@ -488,7 +488,7 @@ Lihat dokumentasi lengkap di [`ci/README.md`](ci/README.md) ### Pengembangan ```bash -docker-compose up -d +docker compose up -d ``` ### Produksi @@ -498,7 +498,7 @@ docker-compose up -d 3. Update password admin Grafana 4. Deploy dengan: ```bash - docker-compose -f docker-compose.yml up -d + docker compose -f docker-compose.yml up -d ``` ## Pemecahan Masalah (Troubleshooting) @@ -519,10 +519,10 @@ sudo lsof -i :9090 ```bash # Cek logs -docker-compose logs +docker compose logs # Rebuild container -docker-compose up -d --build --force-recreate +docker compose up -d --build --force-recreate ``` ### Error Sertifikat SSL @@ -544,7 +544,7 @@ openssl req -x509 -nodes -days 365 -newkey rsa:2048 \ ### Grafana tidak bisa terhubung ke Prometheus -1. Cek Prometheus berjalan: `docker-compose ps prometheus` +1. Cek Prometheus berjalan: `docker compose ps prometheus` 2. Verifikasi config datasource di `monitoring/grafana/datasources.yml` 3. Test koneksi dari Grafana UI: Configuration → Data Sources @@ -564,20 +564,20 @@ docker cp cloudlab-prometheus:/prometheus ./backup/prometheus ```bash # Pull images terbaru -docker-compose pull +docker compose pull # Recreate containers -docker-compose up -d --force-recreate +docker compose up -d --force-recreate ``` ### Pembersihan ```bash # Hentikan semua layanan -docker-compose down +docker compose down # Hapus volumes (PERINGATAN: akan menghapus data) -docker-compose down -v +docker compose down -v # Hapus images yang tidak digunakan docker image prune -a diff --git a/scripts/cleanup.sh b/scripts/cleanup.sh index f0ea504..b38850a 100755 --- a/scripts/cleanup.sh +++ b/scripts/cleanup.sh @@ -18,14 +18,14 @@ if [[ ! $REPLY =~ ^[Yy]$ ]]; then fi echo "🛑 Stopping services..." -docker-compose down +docker compose down read -p "🗑️ Remove volumes (all data will be lost)? (y/N) " -n 1 -r echo "" if [[ $REPLY =~ ^[Yy]$ ]]; then echo "🗑️ Removing volumes..." - docker-compose down -v + docker compose down -v echo "✅ Volumes removed" fi @@ -35,7 +35,7 @@ echo "" if [[ $REPLY =~ ^[Yy]$ ]]; then echo "🗑️ Removing images..." - docker-compose down --rmi all + docker compose down --rmi all echo "✅ Images removed" fi diff --git a/scripts/setup.sh b/scripts/setup.sh index f7fc550..89d1a5a 100755 --- a/scripts/setup.sh +++ b/scripts/setup.sh @@ -17,13 +17,13 @@ if ! command -v docker &> /dev/null; then fi echo "✅ Docker found: $(docker --version)" -# Check Docker Compose +# Check Docker Compose (v2) echo "📦 Checking Docker Compose installation..." -if ! command -v docker-compose &> /dev/null; then - echo "❌ Docker Compose is not installed. Please install Docker Compose first." +if ! docker compose version &> /dev/null; then + echo "❌ Docker Compose (v2) is not installed/enabled. Please install Docker Desktop or Docker Compose v2 plugin." exit 1 fi -echo "✅ Docker Compose found: $(docker-compose --version)" +echo "✅ Docker Compose found: $(docker compose version --short)" # Create necessary directories echo "" @@ -61,25 +61,25 @@ fi # Validate Docker Compose configuration echo "" echo "🔍 Validating Docker Compose configuration..." -docker-compose config > /dev/null +docker compose config > /dev/null echo "✅ Docker Compose configuration is valid" # Pull images echo "" echo "📥 Pulling Docker images..." -docker-compose pull +docker compose pull echo "✅ Images pulled" # Build custom images echo "" echo "🔨 Building application images..." -docker-compose build +docker compose build echo "✅ Images built" # Start services echo "" echo "🚀 Starting services..." -docker-compose up -d +docker compose up -d echo "✅ Services started" # Wait for services to be ready @@ -128,8 +128,8 @@ echo " • Grafana: http://localhost:3000 (admin/admin123)" echo " • Prometheus: http://localhost:9090" echo "" echo "📝 Useful commands:" -echo " • View logs: docker-compose logs -f" -echo " • Stop: docker-compose down" -echo " • Restart: docker-compose restart" +echo " • View logs: docker compose logs -f" +echo " • Stop: docker compose down" +echo " • Restart: docker compose restart" echo "" echo "🎉 Happy coding!"