Vytvoření a publikování položky Marketplace pro vlastní Azure Stack centraCreate and publish a custom Azure Stack Hub Marketplace item

Každá položka publikovaná na tržišti centra Azure Stack používá formát balíčku Galerie Azure (. azpkg).Every item published to the Azure Stack Hub Marketplace uses the Azure Gallery Package (.azpkg) format. Nástroj Azure Gallery Packager umožňuje vytvořit vlastní balíček Azure Gallery, který můžete nahrát na web centra Azure Stack hub, který pak můžou uživatelé stáhnout.The Azure Gallery Packager tool enables you to create a custom Azure Gallery package that you can upload to the Azure Stack Hub Marketplace, which can then be downloaded by users. Proces nasazení používá šablonu Azure Resource Manager.The deployment process uses an Azure Resource Manager template.

Položky MarketplaceMarketplace items

Příklady v tomto článku ukazují, jak vytvořit jednu nabídku tržiště virtuálního počítače typu Windows nebo Linux.The examples in this article show how to create a single VM Marketplace offer, of type Windows or Linux.

PředpokladyPrerequisites

Než vytvoříte položku Marketplace pro virtuální počítače, udělejte toto:Before creating the VM marketplace item, do the following:

  1. Nahrajte vlastní image virtuálního počítače na portál centra Azure Stack podle pokynů v části Přidání image virtuálního počítače do centra Azure Stack.Upload the custom VM image to the Azure Stack Hub portal, following the instructions in Add a VM image to Azure Stack Hub.
  2. Postupujte podle pokynů v tomto článku a zabalite Image (vytvořte soubor. azpkg) a nahrajte ho do tržiště centra Azure Stack.Follow the instructions in this article to package the image (create an .azpkg) and upload it to the Azure Stack Hub Marketplace.

Vytvořit položku MarketplaceCreate a Marketplace item

Pokud chcete vytvořit vlastní položku Marketplace, udělejte toto:To create a custom marketplace item, do the following:

  1. Stáhněte si nástroj Azure Gallery Packager a ukázkový balíček Azure Stack centra pro galerii.Download the Azure Gallery Packager tool and the sample Azure Stack Hub gallery package. Tento soubor ke stažení obsahuje vlastní šablony virtuálních počítačů.This download includes custom VM templates. Rozbalte soubor. zip a v části vlastní virtuální počítače složky můžete použít buď systémy Linux, nebo šablony systému Windows, které jsou k dispozici.Extract the .zip file, and under the folder Custom VMs, you can use either the Linux or the Windows templates that are available. Můžete se rozhodnout znovu použít předem připravené šablony a upravit příslušné parametry s údaji o produktu, které se zobrazí na portálu centra Azure Stack.You can decide to re-use the pre-made templates and modify the respective parameters with the product details of the item that you will show on your Azure Stack Hub portal. Nebo můžete jednoduše znovu použít soubor. azpkg k dispozici a přeskočit následující postup pro přizpůsobení vlastního balíčku galerie.Or, you can simply re-use the .azpkg file available and skip the following steps to customize your own gallery package.

  2. Vytvořte šablonu Azure Resource Manager nebo použijte naše ukázkové šablony pro Windows/Linux.Create an Azure Resource Manager template or use our sample templates for Windows/Linux. Tyto ukázkové šablony jsou k dispozici v souboru. zip nástroje balíčku, který jste stáhli v kroku 1.These sample templates are provided in the packager tool .zip file you downloaded in step 1. Můžete buď použít šablonu a změnit textová pole, nebo si můžete stáhnout předem nakonfigurovanou šablonu z GitHubu.You can either use the template and change the text fields, or you can download a pre-configured template from GitHub. Další informace o šablonách Azure Resource Manager naleznete v tématu Azure Resource Manager Templates.For more information about Azure Resource Manager templates, see Azure Resource Manager templates.

  3. Balíček Galerie by měl obsahovat následující strukturu:The Gallery package should contain the following structure:

    Snímek obrazovky se strukturou balíčku galerie

    Struktura souborů šablon nasazení se zobrazí takto:The deployment templates file structure appears as follows:

    Snímek obrazovky struktury šablon nasazení

  4. Nahraďte následující zvýrazněné hodnoty (s čísly) v Manifest.jsu šablony hodnotou, kterou jste zadali při nahrávání vlastní image.Replace the following highlighted values (those with numbers) in the Manifest.json template with the value that you provided when uploading your custom image.

    Poznámka

    Nikdy nepoužívejte v šabloně Azure Resource Manager žádné tajné kódy, jako jsou kódy Product Key, heslo nebo žádné informace o zákazníkovi.Never hard code any secrets such as product keys, password, or any customer identifiable information in the Azure Resource Manager template. Soubory JSON šablon jsou přístupné bez nutnosti ověřování po publikování v galerii.Template JSON files are accessible without the need for authentication once published in the gallery. Ukládejte všechna tajná klíče v Key Vault a volejte je v rámci šablony.Store all secrets in Key Vault and call them from within the template.

    Doporučuje se, abyste před publikováním vlastní šablony zkusili ukázku publikovat tak, jak jsou, a ujistěte se, že funguje ve vašem prostředí.It's recommended that before publishing your own custom template, you try to publish the sample as-is and make sure it works in your environment. Jakmile ověříte, že tento krok funguje, odstraňte vzorek z galerie a udělejte iterativní změny, dokud nebudete s výsledkem spokojeni.Once you've verified this step works, then delete the sample from gallery and make iterative changes until you are satisfied with the result.

    Následující šablona je ukázka Manifest.jsv souboru:The following template is a sample of the Manifest.json file:

    {
       "$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í číslované hodnoty v příkladu šablony:The following list explains the preceding numbered values in the example template:

    • (1) – název nabídky(1) - The name of the offer.
    • (2) – název vydavatele bez mezer.(2) - The name of the publisher, without a space.
    • (3) – verze šablony bez mezer.(3) - The version of your template, without a space.
    • (4) – název, který se zákazníkům zobrazí.(4) - The name that customers see.
    • (5) – název vydavatele, který se zobrazí zákazníkům.(5) - The publisher name that customers see.
    • (6) – platný název vydavatele.(6) - The publisher legal name.
    • (7) – cesta a název pro každou ikonu.(7) - The path and name for each icon.
  5. U všech polí odkazujících na MS-Resource je nutné změnit příslušné hodnoty uvnitř řetězců nebo resources.jsv souboru:For all fields referring to ms-resource, you must change the appropriate values inside the strings/resources.json file:

    {
    "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"
    }
    
  6. Chcete-li zajistit, aby bylo možné prostředek nasadit úspěšně, otestujte šablonu pomocí rozhraní API centra Azure Stack.To ensure that the resource can be deployed successfully, test the template with the Azure Stack Hub APIs.

  7. Pokud vaše šablona spoléhá na image virtuálního počítače, postupujte podle pokynů pro Přidání image virtuálního počítače do centra Azure Stack.If your template relies on a virtual machine (VM) image, follow the instructions to add a VM image to Azure Stack Hub.

  8. Uložte šablonu Azure Resource Manager do složky /contoso.TodoList/DeploymentTemplates/ .Save your Azure Resource Manager template in the /Contoso.TodoList/DeploymentTemplates/ folder.

  9. Vyberte ikony a text pro položku Marketplace.Choose the icons and text for your Marketplace item. Přidejte ikony do složky ikony a přidejte text do souboru Resources ve složce řetězce .Add icons to the Icons folder, and add text to the resources file in the Strings folder. Použijte pro ikony malé, střední, velké a široké konvence pojmenování.Use the small, medium, large, and wide naming convention for icons. Podrobný popis těchto velikostí najdete v referenčních informacích k uživatelskému rozhraní položky Marketplace .See the Marketplace item UI reference for a detailed description of these sizes.

    Poznámka

    Pro správné vytvoření položky Marketplace se vyžadují všechny čtyři velikosti ikon (malá, střední, Velká, rozsáhlá).All four icon sizes (small, medium, large, wide) are required for building the Marketplace item correctly.

  10. Další úpravy Manifest.jsv naleznete v tématu Reference: položka Marketplace manifest.jsna.For any further edits to Manifest.json, see Reference: Marketplace item manifest.json.

  11. Až dokončíte úpravu souborů, převeďte ji na soubor. azpkg.When you finish modifying your files, convert it to an .azpkg file. Převod provedete pomocí nástroje AzureGallery.exe a balíčku Sample Gallery, který jste předtím stáhli.You perform the conversion using the AzureGallery.exe tool and the sample gallery package you downloaded previously. Spusťte následující příkaz:Run the following command:

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

    Poznámka

    Výstupní cesta může být libovolná cesta, kterou si zvolíte, a nemusí být v jednotce C:.The output path can be any path you choose, and does not have to be under the C: drive. Nicméně musí existovat úplná cesta k manifest.jsv souboru i ve výstupním balíčku.However, the full path to both the manifest.json file, and the output package, must exist. Například pokud výstupní cesta je C:\<path>\galleryPackageName.azpkg , složka C:\<path> musí existovat.For example, if the output path is C:\<path>\galleryPackageName.azpkg, the folder C:\<path> must exist.

Publikování položky MarketplacePublish a Marketplace item

  1. Pomocí PowerShellu nebo Průzkumník služby Azure Storage nahrajte položku Marketplace (. azpkg) do úložiště objektů BLOB v Azure.Use PowerShell or Azure Storage Explorer to upload your Marketplace item (.azpkg) to Azure Blob storage. Můžete nahrávat do místního úložiště centra Azure Stack nebo nahrávat do Azure Storage, což je dočasné umístění balíčku.You can upload to local Azure Stack Hub storage or upload to Azure Storage, which is a temporary location for the package. Ujistěte se, že je objekt BLOB veřejně přístupný.Make sure that the blob is publicly accessible.

  2. Pokud chcete importovat balíček galerie do centra Azure Stack, prvním krokem je vzdálené připojení (RDP) k virtuálnímu počítači klienta, aby bylo možné zkopírovat soubor, který jste právě vytvořili, do centra Azure Stack.To import the gallery package into Azure Stack Hub, the first step is to remotely connect (RDP) to the client VM, in order to copy the file you just created to your Azure Stack Hub.

  3. Přidejte kontext:Add a context:

    $ArmEndpoint = "https://adminmanagement.local.azurestack.external"
    Add-AzEnvironment -Name "AzureStackAdmin" -ArmEndpoint $ArmEndpoint
    Add-AzAccount -EnvironmentName "AzureStackAdmin"
    
  4. Spusťte následující skript pro import prostředku do Galerie:Run the following script to import the resource into your gallery:

    Add-AzsGalleryItem -GalleryItemUri `
    https://sample.blob.core.windows.net/<temporary blob name>/<offerName.publisherName.version>.azpkg -Verbose
    
  5. Ověřte, že máte platný účet úložiště, který je k dispozici pro uložení vaší položky.Verify that you have a valid Storage account that is available to store your item. Tuto hodnotu můžete získat GalleryItemURI z portálu pro správu centra Azure Stack.You can get the GalleryItemURI value from the Azure Stack Hub administrator portal. Vyberte účet úložiště-> vlastnosti objektu BLOB – > URL s příponou. azpkg.Select Storage account -> Blob Properties -> URL, with the extension .azpkg. Účet úložiště se používá jenom pro dočasné použití, aby se daly publikovat na webu Marketplace.The storage account is only for temporary use, in order to publish to the marketplace.

    Po dokončení balíčku galerie a jeho nahrání pomocí Add-AzsGalleryItem by se teď měl váš vlastní virtuální počítač zobrazit na webu Marketplace i v zobrazení vytvořit prostředek .After completing your gallery package and uploading it using Add-AzsGalleryItem, your custom VM should now appear on the Marketplace as well as in the Create a resource view. Všimněte si, že ve správě Marketplace není balíček vlastní Galerie viditelný.Note that the custom gallery package is not visible in Marketplace Management.

    Odeslala se vlastní položka MarketplaceCustom marketplace item uploaded

  6. Po úspěšném publikování položky na webu Marketplace můžete obsah odstranit z účtu úložiště.Once your item has been successfully published to the marketplace, you can delete the content from the storage account.

    Všechny výchozí artefakty galerie a vaše vlastní artefakty galerie jsou teď dostupné bez ověřování v těchto adresách URL:All default gallery artifacts and your custom gallery artifacts are now accessible without authentication under the following URLs:

    • 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 Marketplace můžete odebrat pomocí rutiny Remove-AzGalleryItem .You can remove a Marketplace item by using the Remove-AzGalleryItem cmdlet. Například:For example:

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

Poznámka

Po odebrání položky může uživatelské rozhraní Marketplace zobrazit chybu.The Marketplace UI may show an error after you remove an item. Chybu opravíte tak, že na portálu kliknete na Nastavení .To fix the error, click Settings in the portal. Pak v části vlastní nastavení portálu vyberte zrušit změny .Then, select Discard modifications under Portal customization.

Referenční dokumentace: manifest.jspoložky Marketplace naReference: Marketplace item manifest.json

Informace o identitěIdentity information

NameName Požaduje seRequired TypType OmezeníConstraints PopisDescription
NázevName XX ŘetězecString [A-za-Z0-9] +[A-Za-z0-9]+
PublisherPublisher XX ŘetězecString [A-za-Z0-9] +[A-Za-z0-9]+
VerzeVersion XX ŘetězecString SemVer v2SemVer v2

MetadataMetadata

NameName Požaduje seRequired TypType OmezeníConstraints PopisDescription
DisplayNameDisplayName XX ŘetězecString Doporučení 80 znakůRecommendation of 80 characters Portál nemusí správně zobrazit název položky, pokud je delší než 80 znaků.The portal might not display your item name correctly if it's longer than 80 characters.
PublisherDisplayNamePublisherDisplayName XX ŘetězecString Doporučení 30 znakůRecommendation of 30 characters Portál nemusí správně zobrazit název vašeho vydavatele, pokud je delší než 30 znaků.The portal might not display your publisher name correctly if it's longer than 30 characters.
PublisherLegalNamePublisherLegalName XX ŘetězecString Maximálně 256 znakůMaximum of 256 characters
ShrnutíSummary XX ŘetězecString 60 až 100 znaků60 to 100 characters
LongSummaryLongSummary XX ŘetězecString 140 až 256 znaků140 to 256 characters Ještě neplatí v Azure Stack hub.Not yet applicable in Azure Stack Hub.
PopisDescription XX HTMLHTML 500 až 5 000 znaků500 to 5,000 characters

ImageImages

Tržiště používá následující ikony:The Marketplace uses the following icons:

NameName Width (Šířka)Width Height (Výška)Height PoznámkyNotes
RozlehlýWide 255 px255 px 115 px115 px Vždy vyžadovánoAlways required
VelkáLarge 115 px115 px 115 px115 px Vždy vyžadovánoAlways required
StředníMedium 90 px90 px 90 px90 px Vždy vyžadovánoAlways required
MaláSmall 40 px40 px 40 px40 px Vždy vyžadovánoAlways required
Snímek obrazovkyScreenshot 533 px533 px 324 px324 px VolitelnéOptional

KategorieCategories

Každá položka Marketplace by měla být označena kategorií, která identifikuje, kde se položka zobrazí v uživatelském rozhraní portálu.Each Marketplace item should be tagged with a category that identifies where the item appears on the portal UI. Můžete zvolit jednu z existujících kategorií v Azure Stackovém centru (COMPUTE, data + úložiště atd.) nebo zvolit novou.You can choose one of the existing categories in Azure Stack Hub (Compute, Data + Storage, and so on) or choose a new one.

Každá položka na webu Marketplace může obsahovat různé odkazy na další obsah.Each Marketplace item can include various links to additional content. Odkazy jsou zadány jako seznam názvů a identifikátorů URI:The links are specified as a list of names and URIs:

NameName Požaduje seRequired TypType OmezeníConstraints PopisDescription
DisplayNameDisplayName XX ŘetězecString Maximálně 64 znaků.Maximum of 64 characters.
Identifikátor URIUri XX Identifikátor URIURI

Další vlastnostiAdditional properties

Kromě předchozích metadat mohou autoři na webu Marketplace poskytovat vlastní data párů klíč/hodnota v následujícím tvaru:In addition to the preceding metadata, Marketplace authors can provide custom key/value pair data in the following form:

NameName Požaduje seRequired TypType OmezeníConstraints PopisDescription
DisplayNameDisplayName XX ŘetězecString Maximálně 25 znaků.Maximum of 25 characters.
HodnotaValue XX ŘetězecString Maximálně 30 znaků.Maximum of 30 characters.

Upravení HTMLHTML sanitization

Pro každé pole, které povoluje jazyk HTML, jsou povoleny následující prvky a atributy:For any field that allows HTML, the following elements and attributes are allowed:

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 MarketplaceReference: Marketplace item UI

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.Icons and text for Marketplace items as seen in the Azure Stack Hub portal are as follows.

Okno VytvořitCreate blade

Vytvořit okno – Azure Stack položky centra Marketplace

Okno podrobností položky MarketplaceMarketplace item details blade

Okno s podrobnostmi o položce Azure Stack centra Marketplace

Další krokyNext steps