Windward .NET RESTful Engine Hosting on Azure with a Virtual Machine (HTTP)
It is assumed that you already logged in to a Microsoft Azure account with the correct permissions to create new VMs in the Azure portal.
Creating a Windows Server VM in Azure for the .NET RESTful engine
- Select Create Resource in the side bar
- Select Compute
- Select Virtual machine
- If your account is attached to multiple subscriptions, you will need to select the subscription you would like it to be a part of.
- For the option “Resource group” choose “Create new” and enter the name “RESTfulEngine”.
- For “Virtual machine name” enter RESTfulEngine.
- Select the region you want your RESTfulEngine to run in.
- Select the Image “Windows Server 2019 Datacenter”
- Choose your desired machine size. The number of VCPUs should not exceed the number of cores your RESTful Engine license can run on.
- Fill in the username and password for your administrator account.
- For “Public inbound ports” choose allow selected ports.
- Choose to allow HTTPS(443), HTTP(80), and RDP(3389)
- Click Review + Create
- Verify that the options on the verification page are correct and click Create
- On the overview page for the Virtual machine you created, select configure next to “DNS name”.
- Enter the name you want the machine to have on the resulting page.
- Open the Server Manager and click Add Roles and Features from the Manage menu item
- When the dialog opens, click the Next button
- For Installation Type keep the default selection of "Role-based or feature based installation", Click the Next button
- For Server Selection, keep the default selection and click the Next button
- For Server Roles, select Web Server (IIS) and click the Next button
- A dialog will be shown, click the Add Features button
- Click the Next button
- For Features, select the following
- .NET Framework 4.7 Features -> ASP.NET 4.7
- .NET Framework 4.7 Features -> WCF Services -> HTTP Activation
- Click Next
- Click Next again
- Click Install
- Test that IIS is installed successfully by navigating to http://localhost/ in the browser of your instance. You should see the Internet Information Services (IIS) default page.
- Test that you can reach the VM from outside of your VM by navigating to the Public DNS of your instance from your local PC. (You can find this in the Overview section of your resource within the Azure portal).
Installing the .NET RESTful Engine
- Start Internet Explorer
- Navigate to : https://www.windwardstudios.com/version/version-downloads
- Find the RESTful Engine link in the most recent version and click on the link, when prompted select Save.
- Unzip RESTfulEngineAndClient.zip
- Unzip RESTfulEngine.zip
- Copy the RESTfulEngine directory to C:\inetpub\wwwroot
- Depending on how you unzip the folder you may end up with a folder named RESTfulEngine inside of another folder named RESTfulEngine. If this happens you want the inner one.
- Start the Server Manager
- Select Tools >> Internet Information Services (IIS) Manager
- Expand the Connections Treeview until you see the Default Web Site node
- Select the Default Web Site node and then in the right most menu select Stop
- Right click the Sites node from the left most treeview and select Add Website...
- The Add Website dialog will show
- Specify a Site name
- Specify the Physical path of the RESTfulEngine directory (should be C:\inetpub\wwwroot\RESTfulEngine)
- You may see a warning dialog concerning Port 80 being assigned to another site, just select the OK button
- Update the web.config file with your license key.
- Look for this node in web.config <add key="license" value="[[LICENSE]]" />
- Replace [[LICENSE]] with your license key.
- Test that the .NET RESTful engine is installed and configured correctly by clicking the Browse link in the right-hand Actions menu.
- You should see the API documentation for the .NET RESTful engine.
- Test that the .NET RESTful engine is accessible from outside your VM by navigating to the Public DNS of your instance from your local PC. (You can find this in the Overview section for your resource within the Azure portal).