Files
cmdb-insight/docs/AZURE-ACR-NAMING-RECOMMENDATION.md
Bert Hausmans 42a04e6cb3 Add Azure deployment automation and documentation
- Add separate deployment pipeline (azure-pipelines-deploy.yml) for App Service deployment
- Add advanced pipeline with deployment slots (azure-pipelines-slots.yml)
- Restore azure-pipelines.yml to build-only (no deployment)
- Add comprehensive Azure setup documentation:
  - AZURE-NEW-SUBSCRIPTION-SETUP.md: Complete step-by-step Azure resource setup
  - AZURE-RESOURCES-OVERVIEW.md: Quick reference for all Azure resources
  - AZURE-ACR-SHARED-SETUP.md: Guide for shared Container Registry
  - AZURE-ACR-NAMING-RECOMMENDATION.md: Naming recommendations for Zuyderland
  - AZURE-PIPELINE-DEPLOYMENT.md: Automated deployment setup guide
  - AZURE-PIPELINE-QUICK-REFERENCE.md: Quick reference for pipeline variables
  - AZURE-PIPELINES-USAGE.md: Guide for using build and deployment pipelines
- Add setup script (scripts/setup-azure-resources.sh) for automated resource creation
- Support for shared ACR across multiple applications
2026-01-21 23:03:48 +01:00

4.2 KiB

Azure Container Registry Naming Recommendation

Recommendations for naming your Azure Container Registry for Zuyderland Application Services.

🎯 Requirements

Azure Container Registry names must:

  • Be globally unique (across all Azure subscriptions)
  • Be 5-50 characters long
  • Contain only lowercase alphanumeric characters (no hyphens, underscores, or special characters)
  • Be descriptive but not too long

Pros:

  • Clear company identification
  • Short and memorable (15 characters)
  • Generic enough for all Application Services apps
  • Easy to type and remember
  • Professional appearance

Cons:

  • ⚠️ Might be taken if Zuyderland already has an ACR

Usage:

ACR_NAME="zuyderlandacr"
# Images: zuyderlandacr.azurecr.io/cmdb-insight/backend:latest

Option 2: zuyderlandsharedacr

Pros:

  • Clearly indicates it's a shared registry
  • Company identification
  • Good for documentation ("shared ACR")

Cons:

  • ⚠️ Longer (20 characters)
  • ⚠️ "shared" might be redundant (ACRs are typically shared)

Usage:

ACR_NAME="zuyderlandsharedacr"
# Images: zuyderlandsharedacr.azurecr.io/cmdb-insight/backend:latest

Option 3: zyldacr (Abbreviated)

Pros:

  • Very short (7 characters)
  • Easy to type
  • Less likely to be taken

Cons:

  • ⚠️ Less clear what "zyld" means
  • ⚠️ Might not be obvious it's Zuyderland

Usage:

ACR_NAME="zyldacr"
# Images: zyldacr.azurecr.io/cmdb-insight/backend:latest

Option 4: zuyderlandappsvcsacr

Pros:

  • Includes department name (Application Services)
  • Very specific

Cons:

  • ⚠️ Long (23 characters)
  • ⚠️ Less flexible if other departments want to use it
  • ⚠️ Harder to type

Usage:

ACR_NAME="zuyderlandappsvcsacr"
# Images: zuyderlandappsvcsacr.azurecr.io/cmdb-insight/backend:latest

🏆 Final Recommendation

Use: zuyderlandacr

Reasoning:

  1. Clear and professional: Immediately identifies as Zuyderland
  2. Appropriate length: Not too short (unclear) or too long (hard to type)
  3. Generic enough: Can be used by all Application Services applications
  4. Future-proof: Works for any department or team within Zuyderland
  5. Standard pattern: Follows common naming convention (companynameacr)

🔍 Check Availability

Before creating, check if the name is available:

# Try to check if name exists (will fail if available, which is good)
az acr show --name zuyderlandacr --resource-group dummy-rg 2>&1 | grep -q "could not be found" && echo "Name available!" || echo "Name might be taken"

# Or try to create (will fail if taken)
az acr check-name --name zuyderlandacr

📝 Alternative if Name is Taken

If zuyderlandacr is already taken, try:

  1. zuyderlandacr01 - Add number suffix
  2. zuyderlandacrprod - Add environment suffix
  3. zyldacr - Use abbreviation
  4. zuyderlandregistry - Use full word "registry"
  5. zuyderlandcontainers - Use "containers" instead of "acr"

🎯 Naming Pattern

For consistency across Zuyderland, consider this pattern:

zuyderlandacr          ← Shared ACR for all apps (recommended)
zuyderlandacrdev       ← Development ACR (if needed)
zuyderlandacrprod      ← Production ACR (if separate)

But for most cases, one shared ACR (zuyderlandacr) is sufficient.

📋 Update Your Configuration

Once you've chosen a name, update:

1. Setup Script

# In scripts/setup-azure-resources.sh
ACR_NAME="zuyderlandacr"
ACR_RESOURCE_GROUP="rg-shared-services"  # Or rg-zuyderland-shared

2. Pipeline Variables

# In azure-pipelines.yml
variables:
  acrName: 'zuyderlandacr'
  repositoryName: 'cmdb-insight'

3. Build Scripts

# In scripts/build-and-push-azure.sh
export ACR_NAME="zuyderlandacr"

Checklist

  • Choose ACR name: zuyderlandacr (recommended)
  • Check name availability
  • Create ACR with chosen name
  • Update all configuration files
  • Document name for team
  • Share ACR name with other Application Services teams

Recommended: zuyderlandacr - Clear, professional, and reusable for all Zuyderland Application Services applications.