This is a Heroku buildpack for Mono that will run ASP.NET and Katana/OWIN applications.
It uses nginx as the web server and runs on Mono 3.10.0.
Additional details and guides:
- Running ASP.NET and .NET console apps on Heroku
- Running Katana/OWIN apps on Heroku
- Buildpack update to Mono 3.2 and more
- Heroku .NET buildpack now with nginx
Example usage:
$ heroku create --buildpack https://github.com/kylehodgson/heroku-buildpack-mono.git
$ git push heroku master
The buildpack will detect your app as ASP.NET if it has the file global.asax
in the root or at one directory depth or as .NET if it has a .sln
file.
- Consider inserting environment variables and connectionstrings into Web.config
- Web.Release.config
- Figure out whether there's hope for EntityFramework (and reliance on
System.Data.Entity
and other) - More Mono/XSP versions and ability to select version, like Python buildpack
- Visual Basic!
Store buildoutput in $CACHE_DIR and do incremental builds (also won't cause NuGet packages to be re-downloaded)Less simplistic nginx setup, see nginx buildpackFactor repeated code into functions like PHP buildpackRemove original source code before slug is tarred upSlim down Mono runtime to reduce slug size and build timeAvoid copying Mono runtime to build /app and ${BUILD_DIR} during buildGet bundling and minification to work (likely to be Win/Linux path issues)Get default Visual Studio templates working (you just have to fix casing problems