:_mod-docs-content-type: ASSEMBLY
[id="getting-started-with-service-binding"]
= Getting started with service binding
include::_attributes/common-attributes.adoc[]
include::_attributes/servicebinding-document-attributes.adoc[]
:context: getting-started-with-service-binding

toc::[]

[role="_abstract"]
The {servicebinding-title} manages the data plane for workloads and backing services. This guide provides instructions with examples to help you create a database instance, deploy an application, and use the {servicebinding-title} to create a binding connection between the application and the database service.

// Prerequisites for getting started with Service Binding Operator
[discrete]
== Prerequisites

ifndef::openshift-rosa,openshift-dedicated[]
* You have access to an {product-title} cluster using an account with `cluster-admin` permissions.
endif::openshift-rosa,openshift-dedicated[]
ifdef::openshift-rosa,openshift-dedicated[]
* You have access to an {product-title} cluster using an account with `dedicated-admin` permissions.
endif::openshift-rosa,openshift-dedicated[]
* You have installed the `oc` CLI.
* You have installed {servicebinding-title} from OperatorHub.
ifndef::openshift-rosa,openshift-dedicated[]
* You have installed the 5.1.2 version of the Crunchy Postgres for Kubernetes Operator from OperatorHub using the *v5* Update channel. The installed Operator is available in an appropriate namespace, such as the `my-petclinic` namespace.
+
[NOTE]
====
You can create the namespace using the `oc create namespace my-petclinic` command.
====
endif::openshift-rosa,openshift-dedicated[]
ifndef::openshift-rosa,openshift-dedicated[]
* You have installed the 5.1.2 version of the Crunchy Postgres for Kubernetes Operator from OperatorHub using the *v5* Update channel. The installed Operator is available in an appropriate project, such as the `my-petclinic` project.
+
[NOTE]
====
You can create the project using the `oc new-project my-petclinic` command.
====
endif::openshift-rosa,openshift-dedicated[]

//Creating a PostgreSQL database instance
include::modules/sbo-creating-a-postgresql-database-instance.adoc[leveloffset=+1]

//Deploying the Spring PetClinic sample application
include::modules/sbo-deploying-the-spring-petclinic-sample-application.adoc[leveloffset=+1]

//Connecting the Spring PetClinic sample application to the PostgreSQL database service
include::modules/sbo-connecting-spring-petclinic-sample-app-to-postgresql-database-service.adoc[leveloffset=+1]

[role="_additional-resources"]
[id="additional-resources_getting-started-sbo"]
== Additional resources
* xref:../../applications/connecting_applications_to_services/installing-sbo.adoc#installing-sbo[Installing Service Binding Operator].
* xref:../../applications/creating_applications/odc-creating-applications-using-developer-perspective.adoc#odc-creating-applications-using-developer-perspective[Creating applications using the Developer perspective].
* xref:../../operators/understanding/crds/crd-managing-resources-from-crds.adoc[Managing resources from custom resource definitions].
* link:https://github.com/redhat-developer/service-binding-operator#known-bindable-operators[Known bindable Operators].
