dotnet-azure : A .NET Core global tool to deploy an application to Azure in one command
The options for pushing your .NET Core application to the cloud are not lacking depending on what IDE or editor you have in front of you.
Visual Studio has a rich GUI interface with choices to pick pursuant to the architecture of your app - Web, Containers, SQL Server, Registries, etc.; and for years has excelled at delivering a full experience.
VS Code offers a great Azure extension pack and in its own fashion delivers an experience to publish your web application directly to an AppService, Container and/or Registry too.
If the command line experience is more your "thing", the Azure CLI is available and any resource publish option can be had through the az
command.
But what if you just wanted to deploy
your application to Azure with a single command?
Installation
dotnet-azure is a .NET Core global tool and available via NuGet. To install run the following command.
dotnet tool install dotnet-azure --global
Requirements - An Azure account is required, get one for FREE at https://aka.ms/dotnet-azure
Usage
Each command has a -h|--help
option available.
dotnet azure -h|--help
help
Usage: dotnet-azure [options] [command]
Options:
-?|-h|--help Show help information
Commands:
deploy Deploy application to Azure App Service. Options are used for [NEW] application deployments only.
login Login into Azure
login
Run login
command first to authenticate against your Azure account. You'll be prompted to use a code and URL to authenticate.
dotnet azure login
To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code XXXXXXXXX to authenticate.
deploy
Use defaults, random generated application and resource group name. The current directory is assumed for application for deployment.
Examples
dotnet azure deploy
Pass project folder.
dotnet azure deploy \mynewproject
Pass all options.
dotnet azure deploy --location westus --name fancywebapp --group fancywebgroup --plan BasicB1
Short hand for location
, name
, and group
dotnet azure deploy -l eastus2 -n fancywebapp -g fancygroup
Full help output for deploy command.
Deploy an application to Azure App Service. Options are used for [NEW] application deployments only.
Usage: dotnet-azure deploy [arguments] [options]
Arguments:
AppPath
Options:
-?|-h|--help Show help information
-n|--name <APP_NAME> Name of application, must be unique.
-l|--location <LOCATION> Region or location of app deployment. (eastus, westus, etc.)
-g|--group <RESOURCE_GROUP> Resource group name to create and use for deployment.
-p|--plan <APP_SERVICE_PLAN_TYPE> Type of App Service Plan to create for application. Options (BasicB1, SharedD1, FreeF1, PremiumP1 - more info https://aka.ms/azure-appserviceplans )
What's Next?
Install it, provide feedback. Have ideas, contribute. Is this a good thing? Let me know @spboyer