What's the Azure equivalent of "Add application" in IIS? - azure

We use a app builder to create our applications, download them as .zip, and then just click "Add Application" on IIS, point to the application folder and it would be working.
Our applications require no server logic or database, they are self contained, the database is external and acessed via REST on javascript.
I can't seem to find the equivalent of the above procedure on Azure, it has options like Python/Node/Java/.NET but I'm not sure which of these fit our application needs.
How can I just easily upload a web app on Azure without any backend required?

If I'm understanding your question correctly, you can drag/drop a zip file into the "kudu" console of an Azure webapp to upload the file. Azure takes care of unzipping the file and putting the files in the web app.
To get to that portal, change your web app url to contain ".scm." and append /ZipDeploy to the end of the url:
https://yourwebapp.scm.azurewebsites.net/zipdeploy
Then drag/drop your file onto the web page.
From the main kudu page (remove zipdeploy from your url) you can upload entire directories of files if you need to. I regularly deploy webapps this way and it works great.

One of the easiest approaches is to make use of Azure App Services. This is Azure's Platform as a Service (Paas) offering that allows you to get a web site up fairly quickly whether that be a static site that is mostly client side logic or your more traditional apps such as asp.net\php\etc. You can deploy your app through various means from CI\CD, Github, FTP, etc. You can find more details and a 5 minute quickstart at https://learn.microsoft.com/en-us/azure/app-service/.
More recently Azure has offered the ability to host static web sites right in Azure's Blob storage. It doesn't come with all the features of Azure App Services and does not have any server side execution but has the advantage of price and simplicity and when used in concert with some CDN networks it can be attractive for static client side only sites. More details at https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website

Related

Web service migration from Local IIS to Azure

I Used Azure Website Migration Assistance to migrate my web service that was running on my Local VM's IIS. My Migration process was successful and also I was able to use this web service. But I can't find where to find the migrated source code in azure portal. All I can see is some 20Mb of data in on the dashboard graph of azure portal. If I need to changed some of my code where to do this?
What is on the Azure Web App should now match what was on your IIS server. Now, to update the web app, you can use the deployment techniques here: https://azure.microsoft.com/en-us/documentation/articles/web-sites-deploy/
The simplest method to deploy to check what content is on your web app would be to use the SCM site. This is available at: https://your-site-name.scm.azurewebsites.net. Go to Debug Console > CMD and then the site > wwwroot folder to see your web app content. You can also upload to the site via drag and drop.
Alternatively, you can download the publishing settings for your web app via the portal and then re-use the migration tool, select the site, and then upload the publishing settings. However I would suggest using the deployment techniques above first. (Disclaimer: I wrote the migration tool.)
There are multiple ways to push changes to your Azure Website/Web App. They are listed here: https://azure.microsoft.com/en-us/documentation/articles/web-sites-deploy/
One simple way is to use an FTP client like FileZilla. In the classic portal, you will find the FTP address (hostname) and the credentials in the dashboard tab. In the new portal, select your Web App and the FTP address will be displayed in the Essentials section at the top of the page. Click on Settings and Deployment credentials to set your FTP user password.
Another simple alternative is to use Dropbox. Take a look at this video for how to set instructions: https://channel9.msdn.com/Series/Windows-Azure-Web-Sites-Tutorials/Dropbox-Deployment-to-Windows-Azure-Web-Sites

Geoserver on Microsoft Azure Website

I need to add some Geoserver data on my Azure Website. I'm just wondering that if I need to install Geoserver for that on my account (if it is possible) or is there some other way?
As I was just looking around, I found this link working
http://geoserver.azurewebsites.net/
If this link is working, does it mean that we can configure Geoserver on Azure
There are a couple of ways to do this.
One option is to use a plain old Azure Web App with the GeoServer web archive (WAR file).
To do this download the web archive version of GeoServer. Then create a web app in the Azure portal. Under application settings you need to specify Java version 8 and a Tomcat version above 7.0.65. Then all you need to do is ftp the GeoServer WAR file to /site/wwwroot/webapps.
Once you have done that you should be able to access GeoServer by visiting your web app with the path /geoserver appended to the url. But be patient, the initial start up is slow and can take a few minutes.
Another option is to deploy a container image. I have ended up creating one myself that is tailored for use in an Azure Web App.
To use it you will need a Linux App Service Plan. When creating your web app select Docker Hub as the container image source and use coderpatros/geoserver-azure-web-app as the image. You can also specify a tag to use a particular GeoServer version. i.e. coderpatros/geoserver-azure-web-app:2.14.2. The available tags can be found on Docker Hub at https://hub.docker.com/r/coderpatros/geoserver-azure-web-app/tags. After you've created the web app you need to go to application settings and set WEBSITES_ENABLE_APP_SERVICE_STORAGE to true to enable persistent storage.
There is a OpenGeo Suite in Azure marketplace which helps in publishing maps and data from a variety of formats and sources with GeoServer.
Not sure if it will help you, but here ... OpenGeo Suite

Azure Websites Dropbox Sync from API

I have been looking through the C# and Rest API's for the Microsoft Azure web sites but I cannot find a way of executing the drop box sync command that can be done through the azure portal. Is this possible from an API that any one knows of?
There is support for deploying a WebDeploy file to a Website using PowerShell, so there must be a corresponding API for it.
If you download the publish settings for the website, you'll se that it has a PublishUrl which is the WebDeploy endpoint for the server, along with a msdeploySite, which is your unique site on the server. A WepDeploy file is nothing more than a fancy zip (AFAIK), so by digging into this it should be possible to come up with something which can talk to the webdeploy endpoint and thereby publish.
I don't think that API is something Microsoft publishes though, so you might have to dig deep.

How to host html application on Azure

I have a single page html application, that uses a lot of jQuery. The app content (data as xml and media audio/video/image) is (and has to be) provided by blobs on azure account. I don't need any application server.
What is the recommended way to host such single page html application on Windows Azure Environment (Azure is a requirement).
As I do not need any application server, all application files are currently uploaded into single container as Blobs with appropriate content types. It all works very good.
Still, I've seen that Azure has some website hosting capabilities I've been wondering if what I did is appropriate?
Thanks
Windows Azure Web Sites would work well and could be free for the duration. If the constraints of the free offering don't work for you, you can scale out easily.
You could also store your home page in Azure blob storage, but that means users would have to have the full path to it as there's no server configuration to specify a default page. Publicizing your site endpoint via a vanity URL from bit.ly or the like could make that a non-issue though.
Do note though, that by having everything in blob storage, you're incurring a transaction cost for every image, every page, every script access (that's not cached on the browser that is). Depending on the nature of your site and traffic, it could be more cost-effective to leverage something like Windows Azure Web Site for some of this.

Accessing Azure Storage Services from Azure Websites?

I'm curious to know if this is possible, and if so, is it a good or bad idea?
We are developing an Azure application that is largely centered around worker roles that receive their work on a CloudQueue, and put the results in a CloudBlob, that the client then downloads. The web interface itself is a dead-simple ASP.NET MVC site that throws jobs in the CloudQueue, and builds URLs to download CloudBlobs.
Currently we accomplish this by having a Azure Cloud Project in our solution, which has a Web Role with the UI, and Worker Roles with the actual work.
Could we use Azure Websites to publish and host the UI, which calls back to our Worker Roles? The Azure DLLs are just regular old .NET libraries, I'm assuming Azure Websites won't have a problem with them. So, when we want to update the UI, we just publish with Visual Studio. And when we want to update the Worker Role - which is 300MB+ and has a bunch of nasty dependencies like Crystal Reports - we can build the cloud bundle and update the Cloud Service through the Azure management portal.
This seems to me like doing this would make it easier to update the UI. I think it would also be cheaper to host it, as we won't have to buy a bunch of instances for the Web Role.
If your question is "Could we use Windows Azure Websites*", based on your application architecture, you sure can use Azure Website to deploy your front end and configure all the networking connection properly so you can continue access other Azure Storage services. As you are using mostly Blob and Queue, you can continue use HTTP/HTTPS settings in the Azure websites. You can keep worker role by as it is however if it is very complex to deploy, using Windows Azure VM may be another direction to go.
I could say website deployment could be easier if your web app does not have something complex to configure in web server as websites may not be able to match web server level configuration compare to webrole and Azure VM. Answering "Easier and cheap" could be very subjective as this is all depend on load and distribution so you would have to try and evaluate it.

Resources