vania-janet/multiturn-rag-retrieval-data huggingface dataset:
In the get-started-node directory, create a file called vcap-local.json with the following content:

{
"services": {
"cloudantNoSQLDB": [
{
"credentials": {
"url":"CLOUDANT_DATABASE_URL"
},
"label": "cloudantNoSQLDB"
}
]
}
}
2. Find your app in the IBM Cloud [resource list](https://cloud.ibm.com/resources). On the Service Details page for your app, click Connections in the sidebar. Click the IBM Cloudant menu icon (…) and select View credentials.
3. Copy and paste just the url from the credentials to the url field of the vcap-local.json file, replacing CLOUDANT_DATABASE_URL.
4. Run your app locally.

npm start

View your local app at http://localhost:3000. Any names you enter into the app will now get added to the database.



Avoid trouble: IBM Cloud defines the PORT environment variable when your app runs on the cloud. When you run your app locally, the PORT variable is not defined, so 3000 is used as the port number. See [Run your app locally](https://cloud.ibm.com/docs/cloud-foundry-public?topic=cloud-foundry-public-hints) for more information.

Your local app and the IBM Cloud app are sharing the database. Names you add from either app will appear in both when you refresh the browsers.

Remember, if you don't need your app live on IBM Cloud, stop the app so you don't incur any unexpected charges.





 Next steps 

[Manage your Node.js app](https://cloud.ibm.com/docs/cloud-foundry-public?topic=cloud-foundry-public-nodejs_runtime). Some example tasks include configuring caching and integrating third-party services.

Check out the following resources:
Getting started with apps 

You can use a variety of ways to build and deploy enterprise-ready applications in IBM Cloud. Possible deployment targets include IBM Cloud Kubernetes Service, Red Hat OpenShift on IBM Cloud, and IBM Cloud® Code Engine.



 Before you begin 

Depending on your [IBM Cloud® account type](https://cloud.ibm.com/registration), access to certain resources might be limited or constrained. Depending on your plan limits, certain capabilities that are required by some toolchains might not be available. For more information, see [Setting up your IBM Cloud account](https://cloud.ibm.com/docs/account?topic=account-account-getting-started).

For more information about requirements for specific deployment targets, see the following table.



Table 1. Requirements for deployment targets

 Deployment target Prerequisites 

 IBM Cloud Kubernetes Service / Helm Create a free or paid cluster. One free Kubernetes cluster is available per account. For more information, see [Deploying apps to Kubernetes clusters](https://cloud.ibm.com/docs/containers?topic=containers-app). Helm is a package manager for Kubernetes that allows you to package, configure, and deploy apps and services to IBM Cloud Kubernetes Service. 
 Red Hat OpenShift on IBM Cloud OpenShift is available only through a standard cluster, which requires you to have a billable account. [Learn more](https://cloud.ibm.com/docs/openshift?topic=openshift-openshift_apps) or [create an OpenShift cluster](https://cloud.ibm.com/kubernetes/overview). 
 IBM Cloud® Code Engine Ensure that you have either a Pay-As-You-Go account or a Subscription account to use Code Engine as your deployment target. If you are using a free Lite account, upgrade it before you use Code Engine. [Learn more about accounts.](https://cloud.ibm.com/docs/account) 







 View previously created apps
* The [IBM CLI](https://www.ibm.com/cloud/cli) - the command line interface to interact with the IBM API. You will need to make sure it has the following [plug-ins](https://cloud.ibm.com/docs/cli?topic=cli-plug-ins):



* openshift (oc)
* container registry (cr)



* Make sure you have access to a Mac or Linux terminal.
* [The Kubernetes CLI](https://kubernetes.io/docs/tasks/tools/install-kubectl/) - a command line interface for running commands against Kubernetes clusters.
* [Terraform](https://learn.hashicorp.com/tutorials/terraform/install-cli) - automates your resource provisioning
* [Docker](https://docs.docker.com/engine/install/) We will be using Docker to create the images that will run your code inside your cluster — make sure you are logged into your Docker account
* [jq](https://stedolan.github.io/jq/) - a lightweight and flexible command-line JSON processor
* [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) - a free and open source distributed version control system
* [Node.js and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)







 Step-by-step instructions 



 Step 1: Obtain an API key to deploy infrastructure to your account 

Follow the steps [in this document](https://cloud.ibm.com/docs/account?topic=account-userapikey&interface=uicreate_user_key) to create an API key and make a note of it for Step 2.





 Step 2: Clone the repo and cd into the Terraform directory 

git clone https://github.com/IBM-Cloud/truck-tracker.git
To create an IBM Cloudant Dedicated Hardware plan instance and provision a Standard plan instance on it, follow the [Creating and leveraging an IBM Cloudant Dedicated Hardware plan instance on IBM Cloud](https://cloud.ibm.com/docs/Cloudant?topic=Cloudant-creating-and-leveraging-an-ibm-cloudant-dedicated-hardware-plan-instance-on-ibm-cloudcreating-and-leveraging-an-ibm-cloudant-dedicated-hardware-plan-instance-on-ibm-cloud) tutorial.

The Dedicated Hardware plan isn't available to IBM Cloud Dedicated customers. The Dedicated Hardware plan is only available to IBM Cloud customers.







 Request classes 

Throughput provision is identified and measured as one of the following types of request classes:



1. Reads (formerly called lookups) which are described in this list.



1. A read of a specific document, based on the _id of the document.
2. A partitioned query, which is a request that is made to an IBM Cloudant query endpoint within the _partition namespace in the request path, including the following types:



* Primary Index ([_all_docs](https://cloud.ibm.com/apidocs/cloudantpostalldocs))
* MapReduce View ([_view](https://cloud.ibm.com/docs/Cloudant?topic=Cloudant-using-viewsusing-views))
* Search Index ([_search](https://cloud.ibm.com/docs/Cloudant?topic=Cloudant-cloudant-searchqueries))
* IBM Cloudant Query ([_find](https://cloud.ibm.com/apidocs/cloudantpostfind))



The number of read operations that are used by a partitioned query request varies depending on the results returned.



2. Writes, which are creation, modification, or deletion of individual documents.
3. Global Queries to global indexes (formerly called queries), which are requests that are made to an IBM Cloudant query endpoint not within the _partition namespace, including the following types:
The template that is used in this tutorial works with the Standard plan for Kubernetes.



 Before you begin 

Before you start this tutorial, make sure that you have the following resources in place:



* An [IBM Cloud account](https://cloud.ibm.com/registration). Depending on your IBM Cloud account type, access to certain resources might be limited. Depending on your account plan limits, certain capabilities that are required by some of the deployment strategies might not be available. For more information about IBM Cloud accounts, see [Setting up your IBM Cloud account](https://cloud.ibm.com/docs/account?topic=account-account-getting-started) and [Upgrading your account](https://cloud.ibm.com/docs/account?topic=account-upgrading-account).
* A [Kubernetes cluster](https://cloud.ibm.com/docs/containers?topic=containers-getting-started) and an API key. You can create these resources by using either the UI or the CLI. The cluster might take some time to provision. As the cluster is created, it progresses through the Deploying, Pending, and Ready stages. For more information about Kubernetes clusters, see [Kubernetes clusters](https://cloud.ibm.com/docs/containers?topic=containers-clusters).
* A [Satellite cluster group](https://cloud.ibm.com/docs/satellite?topic=satellite-setup-clusters-satconfig) that contains the cluster that is required by the toolchain. The toolchain in this tutorial supports a Satellite cluster group that contains only one type of cluster: a Kubernetes cluster or a Satellite cluster.
* An instance of the [Continuous Delivery](https://cloud.ibm.com/docs/ContinuousDelivery?topic=ContinuousDelivery-getting-started) service.
* Optional. Secrets that are stored in a secrets management vault and managed centrally from a single location.
Connecting 

IBM® Cloudant® for IBM Cloud® is accessed through an HTTP API. You can see the different parts that you use to connect to IBM Cloudant in the following list:



* Endpoints
* Service credentials
* Authentication
* Accessing the IBM Cloudant Dashboard
* Programmatically accessing IBM Cloudant by using [curl](https://curl.haxx.se/) or client libraries





 Endpoints 

IBM Cloudant is accessed through HTTP API endpoints. The endpoints for an instance are shown in both the URL field of the Service Credentials that are generated for the instance, and in Account > Settings of the IBM Cloudant Dashboard.

All IBM Cloudant HTTP endpoints must be accessed over TLS and prefaced by https://.

The publicly facing external endpoint is shown in the following example:

https://$ACCOUNT.cloudant.com

All instances created after 1 January 2019 include an appdomain.cloud domain endpoint. The publicly facing external endpoint is shown in the following example:

https://$ACCOUNT.cloudantnosqldb.appdomain.cloud

Private (internal) endpoints are added to all instances deployed on Dedicated Hardware plan environments. The IBM Cloud Private (internal) network endpoint is shown in the following example:

https://$ACCOUNT.private.cloudantnosqldb.appdomain.cloud

In the previous example, ACCOUNT is the service name of the service instance user in the URL. An example ACCOUNT is de810d0e-763f-46a6-ae88-50823dc85581-bluemix, and resulting example external endpoint would be de810d0e-763f-46a6-ae88-50823dc85581-bluemix.cloudantnosqldb.appdomain.cloud.

For more information about how to block public network connectivity by using IP allowlisting, see [Secure access control](https://cloud.ibm.com/docs/Cloudant?topic=Cloudant-securitysecure-access-control).





 Service credentials
* [Configure the Cloud Internet Services (CIS) load-balancer](https://cloud.ibm.com/docs/codeengine?topic=codeengine-deploy-multiple-regions=config-load-balancer)
* [Verify that your app is available](https://cloud.ibm.com/docs/codeengine?topic=codeengine-deploy-multiple-regionsverify-app-domain)
* [Cleaning up your tutorial](https://cloud.ibm.com/docs/codeengine?topic=codeengine-deploy-multiple-regionsclean-up)



[Building applications that store information in IBM Cloudant](https://cloud.ibm.com/docs/codeengine?topic=codeengine-tutorial-cloudant-localtutorial-cloudant-local)



* [Create an IBM Cloudant service instance and database](https://cloud.ibm.com/docs/codeengine?topic=codeengine-tutorial-cloudant-localcreate-cloudant)
* [Test your application locally](https://cloud.ibm.com/docs/codeengine?topic=codeengine-tutorial-cloudant-localtest-cloudant-local)
* [Deploying your application to Code Engine](https://cloud.ibm.com/docs/codeengine?topic=codeengine-tutorial-cloudant-localdeploy-cloudant-ce)



[Building applications by using buildpacks](https://cloud.ibm.com/docs/codeengine?topic=codeengine-build-app-tutorialbuild-app-tutorial)



* [Set up registry access](https://cloud.ibm.com/docs/codeengine?topic=codeengine-build-app-tutorialsetup-registry-access)
* [Create a build](https://cloud.ibm.com/docs/codeengine?topic=codeengine-build-app-tutorialcreate-a-build)
Looking to try out IBM Cloud®? Create an account and start building proof of concepts (POCs) with the many components available in IBM Cloud. You can try Lite and Free service plans to explore IBM Cloud at no cost while learning how to work in the cloud, use Watson, and more. This quick start guide is intended to help you get up and running on IBM Cloud without having to think about costs until you're ready.

IBM Cloud overview



* 10 minutes
* 2023-04-03



[Setting up an enterprise](https://cloud.ibm.com/docs/secure-enterprise?topic=secure-enterprise-enterprise-tutorial)Setting up an enterprise

This tutorial walks you through how to set up an enterprise by department so you can manage and track usage costs for multiple IBM Cloud® accounts. By completing this tutorial, you learn how to create an enterprise, add accounts and organize them in account groups, invite users, and explore subscriptions.

Running secure enterprise workloads



* 10 minutes
* 2023-04-17



[Use trusted profiles as foundation for secure cloud environments](https://cloud.ibm.com/docs/solution-tutorials?topic=solution-tutorials-trusted-profile-for-enterprise-security)Use trusted profiles as foundation for secure cloud environments

This tutorial may incur costs. Use the Cost Estimator to generate a cost estimate based on your projected usage.

Running secure enterprise workloads Kubernetes service

+2

Activity Tracker hosted event search,Container Registry



* 2 hours
* 2023-07-14



[Getting set up to sell services](https://cloud.ibm.com/docs/sell?topic=sell-get-started)Getting set up to sell services

Welcome to IBM Cloud®! To start onboarding your service to our cloud platform, first complete a few tasks: provide your company and product details, create a test environment, and set up access for your team to help with the onboarding process.

Selling on IBM Cloud



* 60 minutes
* 2023-02-09
serviceClass: cloudantnosqldb
plan: standard
6. Click Create to create a IBM Cloudant database instance. Your context should be Operators > Installed Operators > IBM Cloud Operator in the Administrator perspective with Project: example-health in the Service panel.
7. Click on the service just created, <your-initials>-cloudant-service and over time the state field will change from provisioning to Online meaning it is good to go.
8. Create a Binding resource and a Secret resource for the cloudant Service resource just created. Navigate back to Operators > Installed Operators > IBM Cloud Operator > Binding tab. Open the Binding tab, click Create Binding and select YAML View. Create a cloudant-binding associated with the serviceName <your-initials>-cloudant-service, (this is the the name provided for the Service created earlier).

apiVersion: ibmcloud.ibm.com/v1
kind: Binding
metadata:
name: cloudant-binding
namespace: example-health
spec:
serviceName: <your-initials>-cloudant-service
9. Optionally dig a little deeper to understand the relationship between the Red Hat OpenShift resources: Service, service Binding, binding Secret and the IBM Cloud resources: Service, service Instance and the instance's Service credentials. Using the cloud shell:

ibmcloud resource service-instances --service-name cloudantnosqldb

YOURINITIALS=<your-initials>

ibmcloud resource service-instance $YOURINITIALS-cloudant-service

ibmcloud resource service-keys --instance-name $YOURINITIALS-cloudant-service --output json

Output looks something like this:

youyou@cloudshell:$ ibmcloud resource service-instances --service-name cloudantnosqldb
Retrieving instances with type service_instance in all resource groups in all locations under ..
OK
Name Location State Type
<your-initials>-cloudant-service us-south active service_instance
youyou@cloudshell:$ ibmcloud resource service-instance <your-initials>-cloudant-service
Securing your connection 

IBM® Cloudant® for IBM Cloud® is accessed through an HTTP API. This document describes the different parts that you use to connect to IBM Cloudant:



* Endpoints (Public and Private)
* Service credentials
* Authentication
* Accessing the IBM Cloudant Dashboard
* Programmatically accessing IBM Cloudant through [curl](https://curl.haxx.se/) or client libraries





 Endpoints (Public and Private) 

IBM Cloudant is accessed through HTTP API endpoints. The endpoints for an instance are shown in both the URL field of the Service Credentials that are generated for the instance, and in Account > Settings of the IBM Cloudant Dashboard.

Therefore, all IBM Cloudant HTTP endpoints must be accessed over TLS and prefaced by https://.



 Public Endpoints 

The publicly facing external endpoint is shown in the following example:

https://$ACCOUNT.cloudant.com

All instances created after 1 January 2019 include an appdomain.cloud domain endpoint. The publicly facing external endpoint is shown in the following example:

https://$ACCOUNT.cloudantnosqldb.appdomain.cloud

In this example, ACCOUNT is the service name of the service instance user in the URL. An example ACCOUNT is de810d0e-763f-46a6-ae88-50823dc85581-bluemix, and resulting example public endpoint would be de810d0e-763f-46a6-ae88-50823dc85581-bluemix.cloudantnosqldb.appdomain.cloud.





 Private Endpoints 

Private (internal) endpoints are added to all instances deployed on Dedicated Hardware plan environments. The IBM Cloud internal network endpoint is shown in the following example:

https://$ACCOUNT.private.cloudantnosqldb.appdomain.cloud

In this example, ACCOUNT is the service name of the service instance user in the URL.
* [IBM Cloud API KEY](https://cloud.ibm.com/docs/account?topic=account-userapikey&interface=ui),
* [jq to query JSON files](https://stedolan.github.io/jq/), and
* [Terraform](https://www.terraform.io) with [VMware Cloud Director Provider](https://registry.terraform.io/providers/vmware/vcd/latest/docs) to use Infrastructure as Code to provision resources.



You will find instructions to download and install these tools for your operating environment in the [Getting started with tutorials](https://cloud.ibm.com/docs/solution-tutorials?topic=solution-tutorials-tutorials) guide.





 Step 1: Clone examples repo 

The example Terraform templates for IBM Cloud® for VMware as a Service are located in [GitHub](https://github.com/IBM/vmwaas-Terraform-examples).

Clone the examples repo into your local machine, for example laptop or a virtual server with Internet access.

For example using GitHub CLI:

gh repo clone IBM/vmwaas-terraform-examples

Or using HTTPS with the following URL:

https://github.com/IBM/vmwaas-terraform-examples.git





 Step 2: Obtain the required information about your virtual data center 

As a prerequisite, use the [IBM Cloud Console](https://cloud.ibm.com/vmware) to [create your IBM Cloud® for VMware as a Service - single tenant instance](https://cloud.ibm.com/docs/vmware-service?topic=vmware-service-tenant-ordering) and [one or more virtual data centers](https://cloud.ibm.com/docs/vmware-service?topic=vmware-service-vdc-adding) on it.

Once the instance and virtual data center has been deployed, you can collect the required details and virtual data center IDs from the Console.
Let's deploy a simple hello world app to see how Code Engine works. Follow the steps to create a project, build your code, and deploy your app.

Review [Cloud Foundry and Code Engine terms](https://cloud.ibm.com/docs/codeengine?topic=codeengine-migrate-cf-ce-terms) before starting this tutorial.



 Objectives 



* Learn the similarities between Code Engine and Cloud Foundry.
* Learn the general process of deploying apps in Code Engine.
* Deploy an application from code on your local system with Code Engine.







 Prerequisites 

Before you can get started with Code Engine, you need to set up your account and install the CLI.



* All Code Engine users are required to have a Pay-as-you-Go account.
* While you can use Code Engine through the console, the examples in this documentation focus on the command line. Therefore, you must install the Code Engine CLI.

ibmcloud plugin install code-engine

For more information, see [setting up the Code Engine CLI](https://cloud.ibm.com/docs/codeengine?topic=codeengine-install-cli). For more information about the CLI, see [Code Engine CLI reference](https://cloud.ibm.com/docs/codeengine?topic=codeengine-cli).







 Step 1: Log in to IBM Cloud 

Follow these steps to log in to your IBM Cloud account and target a resource group.



1. Log in to the IBM Cloud CLI.

ibmcloud login
2. Target a resource group by running the following command. To get a list of your resource groups, run ibmcloud resource groups.

ibmcloud target -g <resource_group>

Example output

Targeted resource group default







 Step 2: Creating a project 

A Code Engine "project" is similar to a Cloud Foundry "space" in that it groups related workloads into a logical collection that is meaningful to the developer.
Getting Started with IBM Cloud for VMware Solutions Shared 

This tutorial may incur costs. Use the [Cost Estimator](https://cloud.ibm.com/estimator/review) to generate a cost estimate based on your projected usage.

On IBM Cloud there are a number of [deployment offerings](https://cloud.ibm.com/docs/vmwaresolutions?topic=vmwaresolutions-getting-startedgetting-started-depl-offerings) for VMware that you can choose from, with each providing a different level of abstraction. VMware Cloud Director (VCD) is offered under the banner of IBM Cloud for VMware Solutions Shared. It is a multi-tenant service with elasticity and two subscription types:



* On-demand where vCPU and RAM are allocated as needed and priced on an hourly basis.
* Reserved where vCPU and RAM are pre-allocated and priced monthly.



VMware changed the name of VMware vCloud Director to VMware Cloud Director, you may see references in the UI and/or related documentation of one or the other, they are the same product.



 Objectives 



* Create and explore a IBM Cloud for VMware Solutions Shared instance in the IBM Cloud.
* Create a Schematics workspace in the IBM Cloud to run Infrastructure as Code(IaC) based on Terraform.
* Use Schematics to create a network, firewall, source network address translation (SNAT), destination network address translation (DNAT) rules, and deploy a virtual machine instance in VMware Virtual Data Center via a Terraform template.



Zoom

![Architecture](https://cloud.ibm.com/docs-content/v1/content/f84e2238288b7f0355715a4c355609ce7ac48fb0/solution-tutorials/images/solution58-vmware-solutions-getting-started/Architecture.svg)

Figure 1. Architecture diagram of the tutorial



1. Create a IBM Cloud for VMware Solutions Shared virtual data center (VDC) instance using the IBM Cloud console.
Creating Cloud Foundry apps 

IBM® Cloud Foundry is deprecated and no longer supported as of 1 June 2023. For more information, see the [deprecation details](https://cloud.ibm.com/docs/cloud-foundry-public?topic=cloud-foundry-public-deprecationdep_details).

With IBM Cloud®, you can create your app in the IBM Cloud console. Then, you can decide to continue to use the console, use the ibmcloud cf command line interface, or use IBM Cloud® DevOps Services to develop, track, plan, and deploy your app.

When you create an app in IBM Cloud, you can begin with a starter. A starter is a template that includes predefined services and app code that is configured with a particular buildpack.

A runtime is the set of resources that is used to run an app. IBM Cloud provides runtime environments as containers for different types of apps. The runtime environments are integrated as buildpacks into IBM Cloud, are automatically configured for use, and require little to no maintenance.

To get started creating your app, take the following steps:



1. Click Catalog in the IBM Cloud® toolbar.
2. Click Cloud Foundry Apps and choose the Cloud Foundry tile. Follow Public Applications to select a Region, Runtime, Name, etc. Click Create.
3. When you are finished with the Getting Started guide, click Overview.
4. You can add a service to your app by clicking Create connection on the app Overview in the dashboard. Or, you can use the ibmcloud cf command line interface. See Options for working with apps.
5. On the Overview page, scroll to the "Continuous delivery" card and click View toolchain. Your app's source will be saved in a repo that is hosted on IBM Cloud®. An open toolchain that uses that repo and a delivery pipeline to develop and deploy your app is also created. For more information about the Continuous Delivery service, see [Getting started with Continuous Delivery](https://cloud.ibm.com/docs/ContinuousDelivery?topic=ContinuousDelivery-getting-started).