#BikeSharing360
During our Visual Studio 2017 Launch event this year, Scott Hanselman presented our Dockder Tooling experiences.
This year, we built the technology stack for a fictional company named BikeSharing360, which allows users to rent bikes from one location to another.
BikeSharing360 is a fictitious example of a smart bike sharing system with 10,000 bikes distributed in 650 stations located throughout New York City and Seattle. Their vision is to provide a modern and personalized experience to riders and to run their business with intelligence.
In this demo scenario, we built several apps for both the enterprise and the consumer (bike riders). You can find all other BikeSharing360 repos in the following locations:
*Mobile Apps *Backend Services *Websites *Single Container Apps *Multi Container Apps *Cognitive Services Kiosk App *Azure Bot App
Demo from Connect() 2016, where Donovan Brown opened an existing, "more complex" application than https://github.com/SteveLasker/Bikesharing360-Single to demonstrate seetting up Continuous Delivery with Visual Studio 2017 RC. The project was then deployed to Azure Container Services, through the Azure Container Registry.
To validate the VSTS Build Steps will sucessfuly build the project, in a container, you can validate this locally:
How this works:
- when you call
docker-compose -f docker-compose.ci.build.yml up
, the imagemicrosoft/aspnetcore-build:1.0-1.1
is attempted to be instanced. - The first time,
microsoft/aspnetcore-build:1.0-1.1
isn't available compose up will build the image using.\build\Dockerfile
- The root of the solution is volume mapped in
dotnet restore
,dotnet publish -c release
are executed
In the same folder as this readme.md file, call:
docker-compose -f docker-compose.ci.build.yml up
Once built, cd .\bin\Release\publishoutput\
From the published directory, dotnet marketing.dll
This will run the site at http://localhost:5000
Once built, docker-compose up -d
Find the dynamically assigned port: docker ps
IMAGE PORTS
bikesharing/marketing 0.0.0.0:32786->8080/tcp
You need an Azure account to work with this demo code. You can:
- Open an Azure account for free Azure subscription. You get credits that can be used to try out paid Azure services. Even after the credits are used up, you can keep the account and use free Azure services and features, such as the Web Apps feature in Azure App Service.
- Activate Visual Studio subscriber benefits. Your Visual Studio subscription gives you credits every month that you can use for paid Azure services.
- Not a Visual Studio subscriber? Get a $25 monthly Azure credit by joining Visual Studio Dev Essentials.
Here's links to blog posts related to this project:
- Xamarin Blog: Microsoft Connect(); 2016 Recap
- The Visual Studio Blog: Announcing the new Visual Studio for Mac
- The Visual Studio Blog: Introducing Visual Studio Mobile Center (Preview)
- The Visual Studio Blog: Visual Studio 2017 Release Candidate
If you see build issues when pulling updates from the repo, try cleaning and rebuilding the solution.
- Code and documentation copyright 2016 Microsoft Corp. Code released under the MIT license.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.