{"id":649,"date":"2016-11-14T00:00:00","date_gmt":"2016-11-14T08:00:00","guid":{"rendered":"http:\/\/officedevblogs.wpengine.com\/?p=649"},"modified":"2021-11-15T11:29:22","modified_gmt":"2021-11-15T19:29:22","slug":"sharepoint-2013-developer-vm-on-azure","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/sharepoint-2013-developer-vm-on-azure\/","title":{"rendered":"Setup SharePoint 2013 Developer VM on Azure"},"content":{"rendered":"<div id=\"body-content\">\n<p>In the past setting up a SharePoint Development box was a complex and tedious experience where a little misstep would, most likely, lead to resetting the machine and starting over.&nbsp; So now we have Virtual Machines on Azure, specifically there is a Marketplace image that has SharePoint Server 2013 Trial setup and Visual Studio 2015 with the Office tooling installed.&nbsp; That&rsquo;s most of the software that is needed to start developing against SharePoint using a single box, but we have a few items to do first.<\/p>\n<p><h3>Create Virtual Machine on Azure using SharePoint Server 2013 Trial Marketplace image<\/h3>\n<p><span>This is fairly straight forward, there a several different posts about <\/span><a href=\"https:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/virtual-machines-windows-hero-tutorial\/\"><span>how to create VMs<\/span><\/a><span>.<\/span><span>&nbsp; <\/span><span>The condensed version is to fire up the <\/span><a href=\"https:\/\/ms.portal.azure.com\/\"><span>Azure Portal<\/span><\/a><span> on your favorite browser, select New Virtual Machines, search for SharePoint Server 2013 Trial.<\/span><\/p>\n<p><p><span> <img decoding=\"async\" width=\"620\" height=\"484\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image201-2.png\"> <\/span><\/p>\n<p><span>Select the Marketplace image and Create filling in the information that is presented to you in the different blades to customize the VM.<\/span><span>&nbsp; <\/span><span>On the last blade before the VM is actually created there is the option to download the ARM template and parameters files.<\/span><span>&nbsp; <\/span><span>These files and a <\/span><a href=\"https:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/resource-group-template-deploy\/\"><span>Powershell deployment script<\/span><\/a><span> will allow you to recreate this VM without having to go through the Azure portal.<\/span><\/p>\n<\/p>\n<p><span><\/span><\/p>\n<p><span><\/span><\/p>\n<p><p><span> <img decoding=\"async\" width=\"484\" height=\"485\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image202-1.png\"> <\/span><\/p>\n<p><span>Select OK, and the Virtual Machine is created.<\/span><span>&nbsp; <\/span><span>Once the box is running attach to it using the Connect and the generated .RDP.<\/span><\/p>\n<\/p>\n<p><span><\/span><\/p>\n<p><span><\/span><\/p>\n<p><p><span style=\"font-family: Calibri;font-size: medium\"> <img decoding=\"async\" width=\"472\" height=\"450\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image203-2.png\"><\/span><\/p>\n<\/p>\n<p><span><\/span><\/p>\n<h3>Install SQL Server 2012 Express locally<\/h3>\n<p><p>The SharePoint Server 2013 standalone installation did was to install <a href=\"https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=30438\">SQL Server 2008 r2 Express<\/a> locally which SharePoint would use as the data storage, but <a href=\"https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=29062\">SQL Server 2012 Express<\/a> works as well.&nbsp; So download and select a &ldquo;New SQL Server stand-alone installation or add features to an existing installation&rdquo; using the default options for the wizard options.&nbsp; Notice under the &ldquo;Database Engine Configuration&rdquo; SQL will be using Windows authentication mode with the current user as the administrator, even if that user is a local account only.&nbsp; As this box is being setup as a development machine this will work best.&nbsp; If the machine is to be used for non-development usage there is a different set of instructions for <a href=\"https:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/virtual-machines-windows-sharepoint-farm\/\">Setting up a SharePoint Farm<\/a>.&nbsp; Now that SQL Server is installed on the VM, we can move onto getting SharePoint configured.<\/p>\n<p>\n<h3>Creating SharePoint Configuration Database<\/h3>\n<p>To create the SharePoint Configuration Database using the SQL Server administrator account, we will use the <a href=\"https:\/\/technet.microsoft.com\/en-us\/library\/ff607838.aspx\">New-SPConfigurationDatabase<\/a> in Powershell.&nbsp; This is an impressive script:<\/p>\n<p>Add-PSSnapin Microsoft.SharePoint.Powershell<\/p>\n<p>&nbsp;New-SPConfigurationDatabase -DatabaseName &#8220;&lt;YourDBName&gt;&#8221; -DatabaseServer &#8220;&lt;usually ComputerNameSQLEXPRESS&gt;&#8221; -AdministrationContentDatabaseName &#8220;&lt;YourOtherDBName&gt;&#8221;-Passphrase (ConvertTo-SecureString &#8220;&lt;new passphrase&gt;&#8221; -AsPlainText -force) -FarmCredentials (Get-Credential)<\/p>\n<p>&nbsp;This will prompt for the FarmCredentials which will be the user name and password for the SQL Server Administrator.&nbsp; So now the databases are created and ready for use.<\/p>\n<p>\n<h3>Configuring SharePoint<\/h3>\n<p>The last piece of the puzzle is to run the SharePoint 2013 Products Configuration wizard.&nbsp; Since the SharePoint databases have been created, the wizard will automatically pick this up.&nbsp; For this example, I created a VM named SHPT13DevBox and the database SP_ConfigDB with the New-SPConfigurationDatabase<\/p>\n<p><p><img decoding=\"async\" width=\"313\" height=\"270\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image204-1.png\"><\/p>\n<p><span>Select Next<\/span><\/p>\n<\/p>\n<p><span style=\"font-family: Calibri;font-size: medium\"><\/span><\/p>\n<p><span style=\"font-family: Calibri;font-size: medium\"> <img decoding=\"async\" width=\"313\" height=\"268\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image205-1.png\"> <\/span><\/p>\n<p><span>Select Next<\/span><\/p>\n<p><p><span style=\"font-family: Calibri;font-size: medium\"> <img decoding=\"async\" width=\"314\" height=\"271\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image206-1.png\"> <\/span><\/p>\n<p><span>Select Next and Finish which will configure the SharePoint Server.<\/span><\/p>\n<\/p>\n<p><span><\/span><\/p>\n<p><span><\/span><\/p>\n<h3>Creating the default SharePoint site collection.<\/h3>\n<p><span><\/span><\/p>\n<p><span>When the wizard has finished the default browser will open to the SharePoint Admin site and will, most likely, ask for the Farm Credentials user name and password.<\/span><span>&nbsp; <\/span><span>Select the &ldquo;Start the Wizard&rdquo; option <\/span><\/p>\n<p><span style=\"font-family: Calibri;font-size: medium\"><img decoding=\"async\" width=\"596\" height=\"470\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image207-1.png\"><\/span><\/p>\n<p>\n<p><span>Select the &ldquo;Use existing managed account&rdquo; and review the services being installed.<\/span><span>&nbsp; <\/span><span>Some services may need additional information or setup and may fail, if not configured properly.<\/span><span>&nbsp; <\/span><span>The SharePoint Farm will be configured properly even if some services fail.<\/span><\/p>\n<\/p>\n<p><span style=\"font-family: Calibri;font-size: medium\"><img decoding=\"async\" width=\"596\" height=\"472\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image208-1.png\"><\/span><\/p>\n<p>\n<p><span>The final step is to setup the Developer site collection.<\/span><span>&nbsp; <\/span><span>The Site Collection requires a title and setting the template to the Developer site.<\/span><span>&nbsp; <\/span><span>To improve the development experience changing the URL from &ldquo;\/my&rdquo; to the simple &ldquo;\/&rdquo; will set the developer site as the default site. <\/span><\/p>\n<\/p>\n<p><span style=\"font-family: Calibri;font-size: medium\"><img decoding=\"async\" width=\"595\" height=\"445\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image209-1.png\"><\/span><\/p>\n<p><span><\/span><\/p>\n<p><span>Select OK and the Developer site is created.<\/span><\/p>\n<\/p>\n<p><span style=\"font-family: Calibri;font-size: medium\"><img decoding=\"async\" width=\"598\" height=\"472\" alt=\"\" src=\"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-content\/uploads\/sites\/73\/2018\/05\/Image2010-1.png\"><\/span><\/p>\n<p><p>The Developer box is now ready for business!&nbsp;<\/p>\n<p>\n<h3>Can I automate this?<\/h3>\n<p>The simple answer is YES!&nbsp; There are various articles available on using Powershell&nbsp; Microsoft.SharePoint.Powershell PsSnapin and SharePoint PSConfig.exe to run the SharePoint configuration and to setup the site collection.&nbsp; Finding the right solution depends on your needs and expertise.&nbsp; Here is a set of different ways automate the VM creation.<\/p>\n<p>&#8211;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href=\"https:\/\/azure.microsoft.com\/en-us\/documentation\/articles\/automation-dsc-overview\/\">Azure Resource Manager template<\/a><\/p>\n<p>&#8211;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/devtest-lab\/\">Azure DevTest Labs with Artifacts<\/a><\/p>\n<p>&#8211;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href=\"https:\/\/azure.microsoft.com\/en-us\/services\/automation\/\">Azure Automation<\/a><\/p>\n<p>I hope this helps!<\/p>\n<p><strong><em>Roger Best &ndash; Senior Software Engineer, Microsoft<\/em><\/strong><\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>In the past setting up a SharePoint Development box was a complex and tedious experience where a little misstep would, most likely, lead to resetting the machine and starting over.&nbsp; So now we<\/p>\n","protected":false},"author":69078,"featured_media":650,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[9],"tags":[],"class_list":["post-649","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sharepoint-framework"],"acf":[],"blog_post_summary":"<p>In the past setting up a SharePoint Development box was a complex and tedious experience where a little misstep would, most likely, lead to resetting the machine and starting over.&nbsp; So now we<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts\/649","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/users\/69078"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/comments?post=649"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/posts\/649\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/media\/650"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/media?parent=649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/categories?post=649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/microsoft365dev\/wp-json\/wp\/v2\/tags?post=649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}