ASP.NET Core sample app illustrating how to use Steeltoe CosmosDB Connector for connecting to a CosmosDB service on CloudFoundry.
- Installed .NET Core SDK
- Installed Azure CosmosDB Emulator
- Updated your primary key in appsettings.development.json under CosmosDb:Client:ConnectionString
- Installed CloudFoundry (optionally with Windows support)
- Installed VMware Tanzu Cloud Service Broker
You must first create an instance of the CosmosDB service in an org/space.
cf target -o your-org -s your-space
cf create-service csb-azure-cosmosdb-sql mini myCosmosDbService
cf target -o your-org -s your-space
cd samples/Connectors/src/CosmosDb
- Push the app
- When using Windows containers:
- Publish app to a local directory, specifying the runtime:
dotnet restore --configfile nuget.config
dotnet publish -r win-x64 --self-contained
- Push the app using the appropriate manifest:
cf push -f manifest-windows.yml -p bin/Debug/net6.0/win-x64/publish
- Publish app to a local directory, specifying the runtime:
- Otherwise:
- Push the app using the appropriate manifest:
cf push -f manifest.yml
- Push the app using the appropriate manifest:
- When using Windows containers:
Note: The provided manifest will create an app named
cosmosdb-connector
and attempt to bind the app to CosmosDB servicemyCosmosDbService
.
To see the logs as you startup and use the app: cf logs mysql-connector
On a Windows cell, you should see something like this during startup:
2016-07-01T07:27:49.73-0600 [CELL/0] OUT Creating container
2016-07-01T07:27:51.11-0600 [CELL/0] OUT Successfully created container
2016-07-01T07:27:54.49-0600 [APP/0] OUT Running .\CosmosDb
2016-07-01T07:27:57.73-0600 [APP/0] OUT Hosting environment: development
2016-07-01T07:27:57.73-0600 [APP/0] OUT Content root path: C:\containerizer\3737940917E4D13A25\user\app
2016-07-01T07:27:57.73-0600 [APP/0] OUT Now listening on: http://*:57540
2016-07-01T07:27:57.73-0600 [APP/0] OUT Application started. Press Ctrl+C to shut down.
This sample will be available at http://cosmosdb-connector.[your-cf-apps-domain]/.
Upon startup, the app inserts a couple of objects into the bound CosmosDB database. They are displayed on the home page.