Vytvoření a publikování vlastní Azure Stack Hub Marketplace

Každá položka publikovaná v Azure Stack Hub Marketplace používá formát balíčku galerie Azure (.azpkg). Nástroj Azure Gallery Packager umožňuje vytvořit vlastní balíček Galerie Azure, který můžete nahrát na web Azure Stack Hub Marketplace, který si pak stáhnou uživatelé. Proces nasazení používá Azure Resource Manager šablony.

Položky Marketplace

Příklady v tomto článku ukazují, jak vytvořit jednu nabídku na marketplace virtuálních počítačů typu Windows nebo Linux.

Požadavky

Před vytvořením položky marketplace virtuálního počítače proveďte následující:

  1. Upload vlastní image virtuálního počítače na Azure Stack Hub Portal podle pokynů v tématu Přidání image virtuálního počítače do Azure Stack Hub.
  2. Podle pokynů v tomto článku zabalte image (vytvořte .azpkg) a nahrajte ji do Azure Stack Hub Marketplace.

Vytvoření položky Marketplace

Pokud chcete vytvořit vlastní položku marketplace, proveďte následující:

  1. Stáhněte si Azure Gallery Packager:

    Gallery packager

  2. Nástroj obsahuje ukázkové balíčky, které jsou ve formátu .azpkg a musí se nejprve extrahovat. Přípony souborů můžete přejmenovat z ".azpkg" na ".zip" nebo použít archivační nástroj podle vašeho výběru:

    Ukázky balíčků

  3. Po extrahování soubor .zip obsahuje šablony Linuxu nebo Windows Azure Resource Manager, které jsou k dispozici. Můžete znovu použít předem Resource Manager šablony a upravit příslušné parametry s podrobnostmi o produktu položky, kterou zobrazíte na svém Azure Stack Hub Portalu. Nebo můžete znovu použít soubor .azpkg a přeskočit následující kroky k přizpůsobení vlastního balíčku galerie.

  4. Vytvořte šablonu Azure Resource Manager nebo použijte naše ukázkové šablony pro Windows/Linux. Tyto ukázkové šablony jsou k dispozici v nástroji packager .zip, který jste stáhli v kroku 1. Můžete použít šablonu a změnit textová pole, nebo si můžete předem nakonfigurovanou šablonu stáhnout z GitHub. Další informace o šablonách Azure Resource Manager v tématu Azure Resource Manager šablony.

  5. Balíček Galerie by měl obsahovat následující strukturu:

    Snímek obrazovky se strukturou balíčku Galerie

  6. Nahraďte následující zvýrazněné hodnoty (ty čísly) v šabloně Manifest.json hodnotou, kterou jste poskytli při nahrávání vlastního obrázku.

    Poznámka

    Nikdy nezadáte žádné tajné kódy, jako jsou kódy Product Key, heslo nebo informace identifikovatelné zákazníkem, Azure Resource Manager šabloně. Po publikování v galerii jsou soubory JSON šablony přístupné bez nutnosti ověřování. Uložte všechny tajné Key Vault a volejte je z šablony.

    Před publikováním vlastní šablony se doporučuje ukázku publikovat tak, jak je, a ujistit se, že funguje ve vašem prostředí. Jakmile ověříte, že tento krok funguje, odstraňte ukázku z galerie a proveďte iterativní změny, dokud s výsledkem nedosá budete spokojeni.

    Následující šablona je ukázka souboru Manifest.json:

    {
       "$schema": "https://gallery.azure.com/schemas/2015-10-01/manifest.json#",
       "name": "Test", (1)
       "publisher": "<Publisher name>", (2)
       "version": "<Version number>", (3)
       "displayName": "ms-resource:displayName", (4)
       "publisherDisplayName": "ms-resource:publisherDisplayName", (5)
       "publisherLegalName": "ms-resource:publisherDisplayName", (6)
       "summary": "ms-resource:summary",
       "longSummary": "ms-resource:longSummary",
       "description": "ms-resource:description",
       "longDescription": "ms-resource:description",
       "links": [
        { "displayName": "ms-resource:documentationLink", "uri": "http://go.microsoft.com/fwlink/?LinkId=532898" }
        ],
       "artifacts": [
          {
             "isDefault": true
          }
       ],
       "images": [{
          "context": "ibiza",
          "items": [{
             "id": "small",
             "path": "icons\\Small.png", (7)
             "type": "icon"
             },
             {
                "id": "medium",
                "path": "icons\\Medium.png",
                "type": "icon"
             },
             {
                "id": "large",
                "path": "icons\\Large.png",
                "type": "icon"
             },
             {
                "id": "wide",
                "path": "icons\\Wide.png",
                "type": "icon"
             }]
        }]
    }
    

    Následující seznam vysvětluje předchozí číslování hodnot v příkladu šablony:

    • (1) – Název nabídky.
    • (2) – Název vydavatele bez mezery.
    • (3) – Verze šablony bez mezery.
    • (4) – Název, který se zobrazí zákazníkům.
    • (5) – Název vydavatele, který se zobrazí zákazníkům.
    • (6) – Právní jméno vydavatele.
    • (7) – Cesta a název každé ikony.
  7. Pro všechna pole odkazující na ms-resourcemusíte změnit příslušné hodnoty v souboru strings/resources.json:

    {
    "displayName": "<OfferName.PublisherName.Version>",
    "publisherDisplayName": "<Publisher name>",
    "summary": "Create a simple VM",
    "longSummary": "Create a simple VM and use it",
    "description": "<p>This is just a sample of the type of description you could create for your gallery item!</p><p>This is a second paragraph.</p>",
    "documentationLink": "Documentation"
    }
    
  8. Struktura souborů šablon nasazení vypadá takto:

    Šablony nasazení

    Nahraďte hodnoty obrázku v souboru createuidefinition.json hodnotou, kterou jste poskytli při nahrávání vlastního obrázku.

  9. Pokud chcete zajistit úspěšné nasazení prostředku, otestujte šablonu pomocí Azure Stack Hub API.

  10. Pokud vaše šablona spoléhá na image virtuálního počítače, postupujte podle pokynů k přidání image virtuálního počítače do Azure Stack Hub.

  11. Uložte šablonu Azure Resource Manager do složky /Contoso.TodoList/DeploymentTemplates/.

  12. Zvolte ikony a text položky Marketplace. Přidejte do složky Ikony ikony a do souboru prostředků ve složce Řetězce přidejte text. Pro ikonypoužijte malé, střední,velké a široké zásady vytváření názvů. Podrobný popis těchto velikostí najdete v referenčních informacích k uživatelskému rozhraní položek Marketplace.

    Poznámka

    Všechny čtyři velikosti ikon (malé, střední, velké, široké) jsou vyžadovány pro správné sestavení položky Marketplace.

  13. Další úpravy souboru Manifest.json najdetev referenčních informacích: Manifest.json položky Marketplace.

  14. Po dokončení úprav souborů je převeďte na soubor .azpkg. Převod provedete pomocí nástroje AzureGallery.exe a ukázkového balíčku galerie, který jste stáhli dříve. Spusťte následující příkaz:

    .\AzureStackHubGallery.exe package -m c:\<path>\<gallery package name>\manifest.json -o c:\Temp
    

    Poznámka

    Výstupní cestou může být libovolná cesta, kterou zvolíte, a nemusí být pod diskem C:. Musí však existovat úplná cesta k souboru manifest.json i k výstupnímu balíčku. Pokud je například výstupní cesta C:\<path>\galleryPackageName.azpkg , musí C:\<path> složka existovat.

Publikování položky Marketplace

  1. Pomocí PowerShellu nebo Průzkumník služby Azure Storage nahrajte položku Marketplace (.azpkg) do úložiště objektů blob v Azure. Můžete nahrát do místního úložiště Azure Stack Hub nebo nahrát do Azure Storage, což je dočasné umístění balíčku. Ujistěte se, že je objekt blob veřejně přístupný.

  2. Pokud chcete balíček galerie importovat do Azure Stack Hub, prvním krokem je vzdálené připojení (RDP) ke klientskému virtuálnímu počítači, abyste mohli zkopírovat soubor, který jste právě vytvořili, do Azure Stack Hub.

  3. Přidání kontextu:

    $ArmEndpoint = "https://adminmanagement.local.azurestack.external"
    Add-AzEnvironment -Name "AzureStackAdmin" -ArmEndpoint $ArmEndpoint
    Connect-AzAccount -EnvironmentName "AzureStackAdmin"
    
  4. Spuštěním následujícího skriptu naimportujte prostředek do galerie:

    Add-AzsGalleryItem -GalleryItemUri `
    https://sample.blob.core.windows.net/<temporary blob name>/<offerName.publisherName.version>.azpkg -Verbose
    

    Pokud při spuštění Add-AzsGalleryItemnastane chyba, je možné, že máte nainstalované dvě verze modulu. Odeberte všechny verze modulu a nainstalujte nejnovější verzi. Postup odinstalace modulů PowerShellu najdete v tématu Odinstalace existujících verzí modulů Azure Stack Hub PowerShellu.

  5. Ověřte, že máte platný účet Storage který je k dispozici pro uložení položky. Hodnotu můžete získat GalleryItemURI z portálu Azure Stack Hub správce. Vyberte Storage account - Blob Properties - > URLs příponou .azpkg. Účet úložiště slouží pouze k dočasnému použití, aby bylo možné ho publikovat na marketplace.

    Po dokončení balíčku galerie a jeho nahrání pomocí Add-AzsGalleryItemby se váš vlastní virtuální počítač měl zobrazit na Marketplace i v zobrazení Vytvořit prostředek. Všimněte si, že vlastní balíček galerie se ve správě Marketplace nezobrazí.

    Nahrání vlastní položky marketplace

  6. Po úspěšném publikování položky na marketplace můžete obsah z účtu úložiště odstranit.

    Všechny výchozí artefakty galerie a vlastní artefakty galerie jsou teď přístupné bez ověřování pod následujícími adresami URL:

    • https://galleryartifacts.adminhosting.[Region].[externalFQDN]/artifact/20161101/[TemplateName]/DeploymentTemplates/Template.json
    • https://galleryartifacts.hosting.[Region].[externalFQDN]/artifact/20161101/[TemplateName]/DeploymentTemplates/Template.json
  7. Položku z Marketplace můžete odebrat pomocí rutiny Remove-AzGalleryItem. Například:

    Remove-AzsGalleryItem -Name <Gallery package name> -Verbose
    

Poznámka

Po odebrání položky se v uživatelském rozhraní Marketplace může zobrazit chyba. Pokud chcete tuto chybu vyřešit, Nastavení na portálu. Pak v části Přizpůsobení portálu vyberteZahodit úpravy.

Referenční informace: Soubor manifest.json položky Marketplace

Informace o identitě

Name Požaduje se Typ Omezení Popis
Název × Řetězec [A-Za-z0-9]+
Publisher × Řetězec [A-Za-z0-9]+
Verze × Řetězec SemVer v2

Metadata

Name Požaduje se Typ Omezení Popis
DisplayName × Řetězec Doporučení o 80 znacích Portál nemusí správně zobrazovat název položky, pokud je delší než 80 znaků.
PublisherDisplayName × Řetězec Doporučení o 30 znacích Portál nemusí správně zobrazovat název vydavatele, pokud je delší než 30 znaků.
PublisherLegalName × Řetězec Maximálně 256 znaků
Souhrn × Řetězec 60 až 100 znaků
LongSummary × Řetězec 140 až 256 znaků V tomto případě se Azure Stack Hub.
Popis × HTML 500 až 5 000 znaků

Obrázky

Marketplace používá následující ikony:

Name Width (Šířka) Height (Výška) Poznámky
Široký 255 px 115 px Vždy vyžadováno
Velká 115 px 115 px Vždy vyžadováno
Střední 90 px 90 px Vždy vyžadováno
Malá 40 pixelů 40 pixelů Vždy vyžadováno
Snímek obrazovky 533 px 324 px Volitelné

Kategorie

Každá položka Marketplace by měla být označená kategorií, která identifikuje, kde se položka zobrazí v uživatelském rozhraní portálu. Můžete zvolit jednu z existujících kategorií v Azure Stack Hub (Compute,Data + Storageatd.) nebo zvolit novou.

Každá položka Marketplace může obsahovat různé odkazy na další obsah. Odkazy jsou určeny jako seznam názvů a identifikátorů URI:

Name Požaduje se Typ Omezení Popis
DisplayName × Řetězec Maximálně 64 znaků.
Identifikátor URI × Identifikátor URI

Další vlastnosti

Kromě předchozích metadat mohou autoři na webu Marketplace poskytovat vlastní data párů klíč/hodnota v následujícím tvaru:

Name Požaduje se Typ Omezení Popis
DisplayName × Řetězec Maximálně 25 znaků.
Hodnota × Řetězec Maximálně 30 znaků.

Upravení HTML

Pro každé pole, které povoluje jazyk HTML, jsou povoleny následující prvky a atributy:

h1, h2, h3, h4, h5, p, ol, ul, li, a[target|href], br, strong, em, b, i

Referenční dokumentace: uživatelské rozhraní položky Marketplace

V následujícím příkladu jsou ikony a text pro položky Marketplace, jak je vidět na portálu centra Azure Stack.

Okno Vytvořit

Vytvořit okno pro Azure Stack centra Marketplace

Okno podrobností položky Marketplace

Okno s podrobnostmi o položce Azure Stack centra Marketplace

Další kroky