vania-janet/multiturn-rag-retrieval-data huggingface dataset:
The following add-ons are compatible with image templates.



* McAfee (free license add-on)
* MySQL (free license add-on)
* Microsoft SQL Server
* R1Soft client



If your bare metal server has add-on software such as cPanel, MS SQL Server, Plesk, or R1Soft Backup Agent, you need to follow the vendor migration guidelines instead of capturing and deploying a custom image. For more information, see [Migrating bare metal servers with add-on software](https://cloud.ibm.com/docs/bare-metal?topic=bare-metal-bm-migrate-custom-image-control-panel).



 Notes for add-ons 

Keep the following notes in mind when you capture an image and deploy a server from an image.



* When a MySQL server is deployed from an image, the administrator user keeps the same password as the original server when the image was captured.
* If an R1soft client is installed and you capture and deploy an image and deploy a new server from that image, you need to reinstall, configure, and add the client again to the R1soft server because the new server has a different IP address.









 Limitations 

Customs images have some limitations that you need to be aware of before you create an image template.



* You can't create custom images on servers that are on a private network
* No multiple RAID configurations
* No RAID 5 and 6
* No Trusted Platform Module (TPM) encryption support
* Logical Volume Management (LVM) isn't supported
* Custom and non-IBM kernels aren't supported
* Control panels (for example cPanel and Plesk) aren't supported
* R1Soft Backup Agent isn't supported for image capture



Any software (for example MySQL) that maintains its own internal password files and database stays unmodified on provision. Access to the software on a provisioned server from the image uses the same username and passwords as the source server that the image was created from.







 Next steps
: (Optional) Limit the clean up to only untagged images in the specified namespace or repository.





 Example 

Delete all untagged images that are in the birds namespace and output the results in JSON format.

ibmcloud cr image-prune-untagged [--force | -f --json]] --restrict birds







 ibmcloud cr image-restore 

Restore a deleted image from the trash. You can choose to restore by [tag](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_tag) or by [digest](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_digest). If you restore by digest, the digest and all its tags in the same repository are restored. To find out what is in the trash, run the [ibmcloud cr trash-list](https://cloud.ibm.com/docs/cli?topic=cli-containerregclibx_cr_trash_list) command.

If you get an error when you're restoring an image that says that the tagged image exists, see [Why do I get an error when I'm restoring an image?](https://cloud.ibm.com/docs/Registry?topic=Registry-troubleshoot-image-restore) for assistance.

If you're restoring an image by digest, but some tags aren't restored, see [Why aren't all the tags restored when I restore by digest?](https://cloud.ibm.com/docs/Registry?topic=Registry-troubleshoot-image-restore-digest) for assistance.

ibmcloud cr image-restore IMAGE



 Prerequisites 

To find out about the required permissions, see [Access roles for using Container Registry](https://cloud.ibm.com/docs/Registry?topic=Registry-iamaccess_roles_using).





 Command options 

IMAGE
: The name of the image that you want to restore from the trash.
* UI
* CLI
* API







 Managing custom images 

After you import a custom image to IBM Cloud VPC, you can view details about the image, manage the lifecycle of the image, use the image to create a virtual server instance, export the image, and even share it with a private catalog.

To manage an image from volume, see [Managing image from volume](https://cloud.ibm.com/docs/vpc?topic=vpc-image-from-volume-vpc-manage&interface=ui). To use a custom image in a private catalog, see [Onboarding a virtual server image for VPC](https://cloud.ibm.com/docs/account?topic=account-catalog-vsivpc-tutorial&interface=ui).

IBM Cloud® Identity and Access Management (IAM) enables you to securely authenticate users for platform services and control access to resources consistently across IBM Cloud. For information about access requirements for custom images, see the IAM roles and actions information in [Image Service for VPC](https://cloud.ibm.com/docs/account?topic=account-iam-service-roles-actionsimage-service-for-vpc).

For details about the $vpc_api_endpoint and $iam_token variables in the following examples, see the Authentication and Endpoint URLs sections in [Virtual Private Cloud API Introduction](https://cloud.ibm.com/apidocs/vpcabout-vpc-api).



 Managing custom images by using the UI 

You can manage an image by using the IBM Cloud console.



1. In [IBM Cloud console](https://cloud.ibm.com/login), go to Menu icon ![Menu icon](https://cloud.ibm.com/docs-content/v1/content/f02b9c9adcbb7328d95a45e105cec371d50f15eb/icons/icon_hamburger.svg) > VPC Infrastructure > Compute > Images.
2. On the Custom images tab, click the Actions icon !
Use ibmcloud is images to find the list of available images. The output will look like:

Listing images...
ID Name OS Created Status Visibility
cc8debe0-1b30-6e37-2e13-744bfb2a0c11 centos-7.x-amd64 CentOS (7.x - Minimal Install) 2018-10-30T06:12:06.651+00:00 available public
660198a6-52c6-21cd-7b57-e37917cef586 debian-8.x-amd64 Debian GNU/Linux (8.x jessie/Stable - Minimal Install) 2018-10-30T06:12:06.624+00:00 available public
e15b69f1-c701-f621-e752-70eda3df5695 debian-9.x-amd64 Debian GNU/Linux (9.x Stretch/Stable - Minimal Install) 2018-10-30T06:12:06.705+00:00 available public
2d7acb16-3d4b-d0e5-d623-e43783a9b126 red-7.x-amd64 Red Hat Enterprise Linux (7.x - Minimal Install) 2019-03-11T02:30:57.249+00:00 available public
7eb4e35b-4257-56f8-d7da-326d85452591 ubuntu-16.04-amd64 Ubuntu Linux (16.04 LTS Xenial Xerus Minimal Install) 2018-10-30T06:12:06.537+00:00 available public
cfdaf1a0-5350-4350-fcbc-97173b510843 ubuntu-18.04-amd64 Ubuntu Linux (18.04 LTS Bionic Beaver Minimal Install) 2018-10-30T06:12:06.51+00:00 available public
Display the images in the birds namespace in the format repository:tag, without truncating the image digests.

ibmcloud cr image-list --restrict birds --quiet --no-trunc







 ibmcloud cr image-prune-untagged 

Delete all [untagged](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_untagged) images in your IBM Cloud Container Registry account.

ibmcloud cr image-prune-untagged [--force | -f --json]] --restrict RESTRICTION



 Prerequisites 

To find out about the required permissions, see [Access roles for using Container Registry](https://cloud.ibm.com/docs/Registry?topic=Registry-iamaccess_roles_using).





 Command options 

--force, -f
: (Optional) Force the command to run with no user prompts.

--json
: (Optional) Outputs JSON that contains the results of cleaning up your untagged images. This option must be used with --force.

--restrict
: (Optional) Limit the clean up to only untagged images in the specified namespace or repository.





 Example 

Delete all untagged images that are in the birds namespace and output the results in JSON format.

ibmcloud cr image-prune-untagged [--force | -f --json]] --restrict birds







 ibmcloud cr image-restore 

Restore a deleted image from the trash. You can choose to restore by [tag](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_tag) or by [digest](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_digest). If you restore by digest, the digest and all its tags in the same repository are restored.
ibmcloud cr image-digests
* Run the [ibmcloud cr image-list](https://cloud.ibm.com/docs/Registry?topic=Registry-containerregclibx_cr_image_list) command:

ibmcloud cr image-list --no-trunc

If you run the ibmcloud cr image-list command without the --no-trunc option, you see the truncated format of the digest.



* How do I use digests to work with images?

 How do I use digests to work with images? 

The [digest](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_digest) identifies an image by using the sha256 hash of the [image manifest](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_manifest).

To find the digests for your images, run the [ibmcloud cr image-digests](https://cloud.ibm.com/docs/Registry?topic=Registry-containerregclibx_cr_image_digests) command. You can refer to an image by using a combination of the content of the Repository column (repository) and the Digest column (digest) separated by an at (@) symbol to create the image name in the format repository@digest.
* How do you use access control?

 How do you use access control? 

You can create IBM Cloud Identity and Access Management (IAM) policies to control access to your namespaces in IBM Cloud Container Registry. For more information, see [Granting access to IBM Cloud Container Registry resources tutorial](https://cloud.ibm.com/docs/Registry?topic=Registry-iam_access) and [Managing IAM access for Container Registry](https://cloud.ibm.com/docs/Registry?topic=Registry-iam).
* How can I share an image with many users?

 How can I share an image with many users? 

You can create an IBM Cloud account and invite all the users to it.
Building container images 

You can use either Classic pipelines or Tekton pipelines to build container images.



 Classic pipelines 

You can use Classic pipelines to build container images by using the Container Registry job type. This job type provides context to access the IBM Cloud® Container Registry, and uses the [Buildkit](https://github.com/moby/buildkit) command from the job's [build script](https://github.com/open-toolchain/commons/blob/master/scripts/build_image_buildkit.sh). Several of the toolchain templates use this script to build container images.

The [cr build](https://cloud.ibm.com/docs/container-registry-cli-plugin?topic=container-registry-cli-plugin-containerregclibx_cr_build) command is deprecated. To migrate your existing build container image job from the cr build command to the [Buildkit](https://github.com/moby/buildkit) command, edit your stage properties and select your build container image job. Replace the line that sources build_image.sh with source <(curl -sSL "https://raw.githubusercontent.com/open-toolchain/commons/master/scripts/build_image_buildkit.sh"). When you switch to use this script, you must provide a new IBM_CLOUD_API_KEY secret environment variable for the corresponding stage. This API key must have access to the namespace in which the image is built. If the IBM_CLOUD_API_KEY secret environment variable is not provided, 401 errors appear in the logs. For more information about this replacement, see the [IBM Cloud® Container Registry is Deprecating Container Builds](https://www.ibm.com/cloud/blog/announcements/ibm-cloud-container-registry-deprecating-container-builds) blog post.





 Tekton pipelines 

The Continuous Delivery service includes several Tekton tasks that you can reference within your pipelines to build container images.
Image Select a stock image, Custom image, or Catalog image for the operating system.<br><br><br><br> * For more information about available stock images, see [x86 virtual server images](https://cloud.ibm.com/docs/vpc?topic=vpc-about-images) and [s390x virtual server images](https://cloud.ibm.com/docs/vpc?topic=vpc-vsabout-images). All operating system images use cloud-init that you can use to enter user metadata that is associated with the instance for post provisioning scripts. Metadata isn't supported for IBM Cloud® Hyper Protect Virtual Server for IBM Cloud® Virtual Private Cloud instances and z/OS virtual server instances. <br> If you plan to use Windows operating systems with SQL Server, see the [About Microsoft SQL on VPC](https://cloud.ibm.com/docs/microsoft?topic=microsoft-mssql-about).<br> * A custom image is an image that you create externally and import to IBM Cloud®, which you can then import into IBM Cloud VPC. For more information about custom images, see [Getting started with custom images](https://cloud.ibm.com/docs/vpc?topic=vpc-planning-custom-images).<br> * You can also use a custom image that was created from a boot volume and was attached to an instance. For more information about creating an image from a volume, see [About creating an image from a volume](https://cloud.ibm.com/docs/vpc?topic=vpc-image-from-volume-vpc).<br> * A Catalog image is a custom image that is imported into a private catalog. You can either import a custom image that was already imported into IBM Cloud VPC or an image from a volume. For more information about catalog images, see [Custom images in a private catalog](https://cloud.ibm.com/docs/vpc?topic=vpc-planning-custom-images&interface=uicustom-image-cloud-private-catalog).
To adopt newer versions of those commands, use a newer image version.<br><br>Service instance: Select a configuration instance or create one. 







 Deprecated job types 

Several job types, such as the IBM Globalization Pipeline Build job, the Space Shell Test job, and the DevOps Insights Gate Test job are deprecated. Although these job types are deprecated, you might still be able to load them in the UI, with an indicator that the job type is deprecated. Alternatively, your job might revert to another job type that is still supported, with a warning notification.

If you need to use the configuration from a deprecated job type, use one of the following methods to access the pipeline configuration.



* Use the IBM Cloud Devtool:

ic dev pipeline-get 7325f511-492a-4c35-a388-5e499e65d6bb -output JSON
* Use the Delivery Pipeline API:

curl --location --request GET 'https://devops-api.us-south.devops.cloud.ibm.com/v1/pipeline/pipelines/7325f511-492a-4c35-a388-5e499e65d6bb/stages' --header 'Authorization: Bearer <IAM Bearer token>
* From the Network tab of the Delivery Pipeline UI, filter by the pipeline ID to locate the pipeline that contains the deprecated job type data.







 API keys 

Some of the standard pipeline jobs use IBM Cloud API keys to access services, such as deploying to Kubernetes. The [IBM Cloud Identity and Access Management (IAM)](https://cloud.ibm.com/docs/services/account?topic=account-iamoverview) service provides two types of API keys:



* user API keys: These API keys provide full access to all of the services and resources that the user has access to.
* service API keys: You can configure service API keys to provide specific access to various services and resources.



Some services cannot use service ID API keys. In such cases, the pipeline user interface prompts you to specify a user API key.
In [IBM Cloud console](https://cloud.ibm.com/login), go to menu icon ![menu icon](https://cloud.ibm.com/docs-content/v1/content/f02b9c9adcbb7328d95a45e105cec371d50f15eb/icons/icon_hamburger.svg) > VPC Infrastructure > Compute > Images.
2. On the Custom images tab, click Create. The Import custom image page is displayed.
3. Complete the required fields on the Import custom images page (see Table 1), and then continue with one of the Source options.





Table 1. Import custom image user interface fields

 Field Value 

 Name A name is required for your custom image. 
 Resource group Select a resource group for the instance. 
 Tags You can assign a label to this resource so that you can easily filter resources in your resource list. 
 Region Select the location, or specific geographic area, where you want your custom image to be available for provisioning. 
 Source Select the source for the custom image by choosing either [Virtual server instance boot volume](https://cloud.ibm.com/docs/vpc?topic=vpc-create-ifvimport-custom-image-vsi) (default) or [Block storage boot volume](https://cloud.ibm.com/docs/vpc?topic=vpc-create-ifvimport-custom-image-vol). 
 Manage image lifecycle (optional) Select to schedule status changes for the image. You can schedule a single status change or schedule the complete lifecycle of the images. The image statuses are:<br><br><br><br> * available: The image can be used to create an instance.<br> * deprecated: The image is still available to use to provision and instance.
make sure you prepare or export the following data from each built artifact:
 - type (image for docker images, package for rpms, npm tarballs, etc )
 - full artifact URL with version tag
 - artifact digest

your_build_scripts


 when the build is complete
 use save_artifact to add these information to the pipeline
 artifact-reference-name can be any name, it is used to refer to the stored artifact

save_artifact <artifact-reference-name> type=image" name="${IMAGE_URL}" digest="${IMAGE_DIGEST}"
Show more

The preferred format for image name is image-URL:build-tag, for example, wcp-compliance-automation-team-docker-local.artifactory.swg-devops.com/compliance-baseimage:2.8.0. {: important]

If you build Docker images, use the save_artifact interface to send those images for the default built-in image signing and CR VA scanning tasks.







 Release 

At the end of the pipeline, the built artifacts must be added to the inventory, so they can be promoted to deployment. The release stage provides flexibility if you want to add other artifacts to the inventory, such as Helm charts.

In this stage, you can use the CLI cocoa inventory add command, and the data from pipelinectl commands, to create the inventory entries.

If there are problems in the pipeline run, you migh want to skip inventory update to avoid a problematic inventory. To skip inventory update use the following environment variables:



* skip-inventory-update-on-failure Opt-in environment variable from pipeline to specify whether the inventory is updated.
* one-pipeline-status Set to 1 if there is a stage failure in the pipeline run.



Check these variables before calling cocoa inventory add in this stage.



 Example 

 Check the status of pipeline and then release the artifacts to inventory

ONE_PIPELINE_STATUS=$(get_env one-pipeline-status 0)
if [ -n "$(get_env skip-inventory-update-on-failure "")" ]; then
if [ $ONE_PIPELINE_STATUS -eq 1 ]; then
* es-ES_EnriqueVoice
* es-ES_LauraVoice
* es-LA_SofiaVoice
* es-US_SofiaVoice
* fr-FR_ReneeVoice
* it-IT_FrancescaVoice
* ja-JP_EmiVoice
* pt-BR_IsabelaVoice



All of the standard voices that have been deprecated have equivalent neural counterparts, so no voice is being taken away. Rather, you can change to the equivalent neural version of the voice (for example, from de-DE_BirgitVoice to de-DE_BirgitV3Voice) for better speech-synthesis results.

These deprecated voices are removed from the published documentation. They will continue to function for at least one year but might be removed at a future date. You are encouraged to migrate to the equivalent neural voices at your earliest convenience.

If you omit the optional voice parameter from a speech synthesis request, the service uses en-US_MichaelV3Voice by default. This neural voice replaces the now-deprecated en-US_MichaelVoice standard voice that was the previous default.

Deprecated features
: The following features were available only for standard concatenative voices. They are deprecated and have been removed from the published documentation. They will continue to function for at least one year but might be removed at a future date. You are encouraged to remove these features from your applications and to migrate to neural voices at your earliest convenience.



* Expressive SSML. This was an IBM extension to SSML that was supported only for the en-US_AllisonVoice voice.
* Voice transformation SSML. This was an IBM extension to SSML that was supported only for the en-US_AllisonVoice, en-US_LisaVoice, and en-US_MichaelVoice voices.
* The volume attribute of the <prosody> element. This attribute was available for all standard voices.



Including these SSML elements with a synthesis request for a neural voice generates an HTTP 400 response code because the request fails SSML validation.
You can reference the image that you want to inspect either by [digest](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_digest), repository@digest, or by [tag](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_overviewoverview_elements_tag),repository:tag.

ibmcloud cr image-inspect [--format FORMAT] IMAGE [IMAGE...]



 Prerequisites 

To find out about the required permissions, see [Access roles for using Container Registry](https://cloud.ibm.com/docs/Registry?topic=Registry-iamaccess_roles_using).





 Command options 

--format FORMAT
: (Optional) Format the output elements by using a Go template. For more information, see [Formatting and filtering the Container Registry CLI output](https://cloud.ibm.com/docs/Registry?topic=Registry-registry_cli_list).

IMAGE
: The name of the image for which you want to get a report. You can inspect multiple images by listing each image in the command with a space between each name.

You can identify images by using either the digest <dns>/<namespace>/<repo>@<digest> or by tag <dns>/<namespace>/<repo>:<tag>. Where <dns> is the domain name, <namespace> is the namespace, <repo> is the repository, <digest> is the digest, and <tag> is the tag.

To find the names of your images, run one of the following commands:



* To identify your image by digest, run the ibmcloud cr image-digests command. Combine the content of the Repository column (repository) and the Digest column (digest) separated by an at (@) symbol to create the image name in the format repository@digest.
* To identify your image by tag, run the ibmcloud cr image-list command.
curl -X DELETE "$vpc_api_endpoint/v1/images/$image_id/export_jobs/$export_job_id?version=2022-11-21&generation=2" -H "Authorization: Bearer $iam_token"





 Renaming an image export job by using the API 

To rename a custom image export job by using the API, use [Update an image export job](https://cloud.ibm.com/apidocs/vpc/latestupdate-image-export-job).

For the$image_id variable, specify the ID of the custom image for which you want to rename an export job. For the $export_job_id variable, specify the ID of the image export job that you want to rename. The new name to assign to the image export job in the following example is my-export-job-patched.

curl -X PATCH "$vpc_api_endpoint/v1/images/$image_id/export_jobs/$export_job_id?version=2022-11-21&generation=2" -H 'Content-Type: application/json' -H "Authorization: Bearer $iam_token" -d '{
"name": "my-export-job-patched"
}'







 Sharing a custom image to a private catalog by using the UI 

You can share an existing IBM Cloud VPC custom image to an existing private catalog. If you don't already have a private catalog, see [Onboarding a virtual server image for VPC](https://cloud.ibm.com/docs/account?topic=account-catalog-vsivpc-tutorial&interface=ui).

The Share image to private catalog action is not available for the following images:



* The image is already shared with a private catalog. An image in a private catalog can exist in only one version within one product offering in one private catalog. You must remove the image from the version it is in first before that image can be shared in a different version.
* The image is encrypted.
* The image is not an x86 image.