Skip to content

Latest commit

 

History

History
76 lines (57 loc) · 3.8 KB

File metadata and controls

76 lines (57 loc) · 3.8 KB

MongoDB Connector Sample App

ASP.NET Core sample app illustrating how to use the Steeltoe MongoDB Connector for connecting to a MongoDB database.

General pre-requisites

  1. Installed .NET 10 SDK
  2. Optional: Tanzu Platform for Cloud Foundry (optionally with Windows support) with Tanzu Cloud Service Broker for Microsoft Azure and Cloud Foundry CLI
  3. Optional: Tanzu Platform for Kubernetes v1.6 or higher and Tanzu CLI

Running locally

  1. Start a MongoDB docker container
  2. Run the sample
    dotnet run

Upon startup, the app inserts a couple of objects into the bound MongoDB database. They are displayed on the home page.

Running on Tanzu Platform for Cloud Foundry

  1. Create a MongoDB service instance in an org/space
    cf target -o your-org -s your-space
    cf marketplace
    cf marketplace -e your-offering
    cf create-service csb-azure-mongodb your-plan sampleMongoDbService --wait
  2. Run the cf push command to deploy from source (you can monitor logs with cf logs mongodb-connector-sample)
    • When deploying to Windows, binaries must be built locally before push. Use the following commands instead:
      dotnet publish -r win-x64 --self-contained
      cf push -f manifest-windows.yml -p bin/Release/net10.0/win-x64/publish
  3. Copy the value of routes in the output and open in your browser

Running on Tanzu Platform for Kubernetes

Create MongoDB class claim

In order to connect to MongoDB for this sample, you must have a class claim available for the application to bind to. The commands listed below will create the claim, and the claim will be bound to the application via the definition in the workload.yaml that is included in the config folder of this project.

kubectl config set-context --current --namespace=your-namespace
tanzu service class-claim create sample-mongodb-service --class mongodb-unmanaged

If you'd like to learn more about these services, see claiming services and consuming services in the documentation.

App deployment

To deploy from local source code:

tanzu app workload apply --local-path . --file ./config/workload.yaml -y

Alternatively, from locally built binaries:

dotnet publish -r linux-x64 --no-self-contained
tanzu app workload apply --local-path ./bin/Release/net10.0/linux-x64/publish --file ./config/workload.yaml -y

See the Tanzu documentation for details.


See the Official Steeltoe Connectors Documentation for more detailed information.