This page describes the steps to set up your GCP environment, so that you can distribute your Kubernetes applications.
Create a project
First, set up a project that you can use to test and distribute your app.
If you already have projects set up for selling VM solutions, you can re-use those projects, and skip to setting up a container registry.
We recommend that you create a new project primarily for your GCP Marketplace solutions. For steps to create your project, see Creating and Managing Projects.
After you have created the project, grant the Project Viewer role to
firstname.lastname@example.org. For steps to grant access to your project,
see Granting, changing and revoking access to resources.
While you are creating your solution, if you need help debugging your project,
such as troubleshooting your Container Registry repository, grant the
Project Editor role to
After you have created your project, complete the Project Info form, and let your Partner Engineer know when you have completed the form.
Set up a container registry
You need a Container Registry repository to host the container images for your application. Container Analysis continuously scans the application images for vulnerabilities so that you can review and address issues before customers deploy your application.
To set up Container Registry, Docker, and the GCP SDK, follow the Container Registry quickstart.
After you set up Container Registry, in the project that contains your
registry, grant the Project Viewer role to
Enable the Container Analysis API
You must enable the Container Analysis API, which scans your container images in Container Registry for vulnerabilities. For an overview of vulnerability scanning in Container Analysis, see see the Container Registry Documentation.
Add your solution in Partner Portal
You use Partner Portal to add marketing information about your application, and to enter your pricing model. Your Partner Engineer enables Partner Portal for you after you have completed the Project Info form.
At this stage, you only need to create the entry for your solution in Partner Portal. You add your marketing information in later steps.
The direct link to Partner Portal is:
To create your solution:
At the top of the page, click Add solution.
Name your solution and check the solution ID. The solution ID is used in the URL for your GCP Marketplace listing.
Under Solution Type, select Kubernetes app.
In the Staging repo URL box, enter the URL for your Container Registry repository
Click Create. It might take a few seconds to create your solution.
You add your pricing model and marketing information for your solution in later steps.
Create a test cluster in Kubernetes Engine
You use Google Kubernetes Engine to manage and scale Kubernetes clusters. To create a test cluster and deploy a basic application to it, follow the Google Kubernetes Engine quickstart.
Choose your product identifiers
You must select the following identifiers for your company, product, and container images, which are used to create your GCP Marketplace URLs, and the URIs for your container images:
Your company's name. For example, if the name of your company is Examplesoft Inc., you can use the identifier
Your product's name. For example, if the product's name is Example Pro, use the identifier
The major version of your product, such as
4. The major version might also indicate technical variations, such as Nginx- or Apache-based. All releases in a major version correspond to a backwards-compatible upgrade track for your software. Your users must be able to upgrade to a new release of the major version that they are using.
Your application must use semantic versioning. For example, if you are releasing version 4.x on GCP Marketplace, use the identifier
As a best practice, avoid using generic version names such as
latest. If you are releasing a backwards-incompatible update to your software, we recommend releasing the update as a new major version.
Your container images. Select a unique identifier for each container image in your application. The following identifiers are required for all applications:
- The primary image: This container image is the main image for your
product, and uses the same identifier as the product. For example, if
your product identifier is
example-pro, the primary image uses the same identifier.
deployer: The deployment container image for the track. The deployment container runs when users deploy your app from Google Cloud Platform Console You create a deployment image when you create your app package.
- The primary image: This container image is the main image for your product, and uses the same identifier as the product. For example, if your product identifier is
For example, the company Examplesoft Inc. chooses the following identifiers for their product, Example Pro:
|Image  (primary)||Example Pro server||n/a|
|Image ||Example Queue||example-queue|
|Major version ||Version 4.x.x||4|
|Major version ||Version 5.x.x||5|
For these identifiers, the following information is automatically generated:
The product URL in GCP Marketplace:
The container image URIs: