25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

54 satır
1.7KB

  1. #Requires -Version 5.1
  2. <#
  3. .SYNOPSIS
  4. Builds the Campaign Tracker Docker image and pushes it to the private registry.
  5. .EXAMPLE
  6. .\docker-publish.ps1
  7. .\docker-publish.ps1 -SkipBuild # push a previously built image
  8. #>
  9. param(
  10. [switch]$SkipBuild
  11. )
  12. Set-StrictMode -Version Latest
  13. $ErrorActionPreference = "Stop"
  14. # ---------------------------------------------------------------------------
  15. # Configuration
  16. # ---------------------------------------------------------------------------
  17. $REGISTRY_HOST = "192.168.1.200" # change port if needed, e.g. "192.168.1.200:5000"
  18. $IMAGE_NAME = "campaign-tracker"
  19. $FULL_TAG = "$REGISTRY_HOST/$IMAGE_NAME`:latest"
  20. # ---------------------------------------------------------------------------
  21. # Helpers
  22. # ---------------------------------------------------------------------------
  23. function Write-Step([string]$msg) {
  24. Write-Host "`n==> $msg" -ForegroundColor Cyan
  25. }
  26. function Assert-DockerRunning {
  27. docker info > $null 2>&1
  28. if ($LASTEXITCODE -ne 0) {
  29. Write-Error "Docker is not running or not reachable. Start Docker Desktop and retry."
  30. }
  31. }
  32. # ---------------------------------------------------------------------------
  33. # Main
  34. # ---------------------------------------------------------------------------
  35. Assert-DockerRunning
  36. if (-not $SkipBuild) {
  37. Write-Step "Building image: $FULL_TAG"
  38. docker build --tag $FULL_TAG .
  39. if ($LASTEXITCODE -ne 0) { Write-Error "docker build failed (exit $LASTEXITCODE)." }
  40. }
  41. Write-Step "Pushing image: $FULL_TAG"
  42. docker push $FULL_TAG
  43. if ($LASTEXITCODE -ne 0) { Write-Error "docker push failed (exit $LASTEXITCODE)." }
  44. Write-Host "`nDone. Image available at $FULL_TAG" -ForegroundColor Green

Powered by TurnKey Linux.