SharePoint 2013: Create an Isolated App Domain (Step-by-Step)
Setting up a SharePoint development environment has always been challenging and with the new Apps model in SharePoint 2013, there are even more options and requirements. For traditional SharePoint developers, that means an Isolated App Domain is required for local App development.
There are a few PowerShell scripts out there that can make some of the necessary changes for you, but in my experience these scripts are often incomplete and add unnecessary complexity. Either way, I have always found it's better to understand what's happening in your environment even if you choose to automate the process afterwards. Be sure to follow these instructions closely and don't skip any steps. Please note - there may be some naming variations, depending on the configuration of your SharePoint development environment.
Download this article Create Isolated App Domain.pdf (1.0MB)
Download the SharePoint commands Isolated App Domain Commands.txt used in this article (1.7KB)
Step-by-Step Instructions (Graphical Instructions | Video Instructions | Downloads)
- Run the DNS Manager from the Windows Start Screen.
- In DNS Manager, right-click Forward Lookup Zones, then the New Zone context menu.
- Click Next on the New Zone Wizard dialog.
- On the Zone Type step, select Primary zone, then Next.
- On the Active Directory Zone Replicator Scope step, select the To all DNS servers running on domain controllers in this domain option, then Next.
- On the Zone Name step, enter your app domain name (i.e.,
informatix.com
), then Next. - On the Dynamic Update step, select the Allow only secure dynamic updates option, then Next.
- Click Finish to complete the New Zone Wizard.
- Right-click the newly created zone (
informatix.com
) and click New Alias (CNAME) from the context menu. - On the New Resource Record dialog, enter
*
as the Alias name and select the Browse button. - On the Browse dialog, drill down to your server -> Forward Lookup Zones -> domain controller -> (same as parent folder). Ensure Hosts and Aliases (A and CNAME Records) is selected as the Record types and click the OK button.
- Click OK to close the New Resource Record dialog.
- Verify the SOA, NS and CNAME were properly created by selecting the new Forward Lookup Zone (
informatix.com
). - In SharePoint Central Administration, click the Manage service applications link.
- Click the New button, then the App Management Service menu item.
- On the New App Management Service Application dialog, enter
AppManagementServiceApp
as the Service Application Name. Select the Use existing application pool option, then select SPAppPool from the drop-down. Ensure the Create App Management Service Application checkbox is checked. Click the OK button. - The service application process may take a couple of minutes, depending on the development farm configuration.
- Once returned to the list of Service Applications, ensure both App Management Service Application and User Profile Service Application are Started.
- Run the SharePoint 2013 Management Shell as an administrator.
- Start the SPAdminV4 and SPTimerV4 service applications:
net start SPAdminV4
net start SPTimerV4
- Set the domain used to host apps to the new zone created above:
Set-SPAppDomain "informatix.com"
- Start the AppManagementServiceInstance and SPSubscriptionSettingsServiceInstance service instances:
Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"} | Start-SPServiceInstance
- Ensure the AppManagementServiceInstance and SPSubscriptionSettingsServiceInstance service instances are Online:
Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"}
- Create the SharePoint Subscription Service:
$account = Get-SPManagedAccount
"DC07\SPFarm"
$appPoolSubSvc = New-SPServiceApplicationPool -Name SettingsServiceAppPool -Account $account
$appPoolAppSvc = New-SPServiceApplicationPool -Name AppServiceAppPool -Account $account
$appSubSvc = New-SPSubscriptionSettingsServiceApplication –ApplicationPool $appPoolSubSvc –Name SettingsServiceApp –DatabaseName SettingsServiceDB
$proxySubSvc = New-SPSubscriptionSettingsServiceApplicationProxy –ServiceApplication $appSubSvc
$appAppSvc = New-SPAppManagementServiceApplication -ApplicationPool $appPoolAppSvc -Name AppServiceApp -DatabaseName AppServiceDB
$proxyAppSvc = New-SPAppManagementServiceApplicationProxy -ServiceApplication $appAppSvc
Note - Make sure to change the"DC07\SPFarm"
to your farm account (or create a new farm-level managed account). - Set the name for the site subscription:
Set-SPAppSiteSubscriptionName -Name "app" -Confirm:$false
- Create a new Developer Site site collection for local App deployment. In Central Administration, click Create site collections.
- On the Create Site Collection page, enter the following and click the OK button:
Field Value Title App Dev Description Application Development URL dev Template Collaboration -> Development Site Primary Administrator Administrator - Once the developer site has been created, click the OK button to return to Central Administration.
- (Optional) In some cases, you might receive unauthorized errors or multiple login requests after you've deployed a SharePoint app. One solution is to Disable Loopback Check in Windows. I usually just disable the loopback check at this point to avoid headaches down the road.
- That's it - now you're ready to deploy your SharePoint apps to your local SharePoint development environment.
Graphical Instructions
Run the DNS Manager from the Windows Start Screen. http://3.bp.blogspot.com/-UKfxS_y-JOE/Ul6ZQpbnSCI/AAAAAAAAA2k/aOHqFRCyi60/s320/step_01.png
In DNS Manager, right-click Forward Lookup Zones, then the New Zone context menu. http://3.bp.blogspot.com/-6C8UlagRD88/Ul6cHyZ1PbI/AAAAAAAAA2s/-i3UyKIyQdQ/s1600/step_02.png
Click Next on the New Zone Wizard dialog. http://4.bp.blogspot.com/-2ym_bbIqh7w/Ul6cHwtDsfI/AAAAAAAAA2w/IcfQxb_BdJs/s1600/step_03.png
On the Zone Type step, select Primary zone, then Next. http://1.bp.blogspot.com/-asrvCoBtl1c/Ul6cH_g2H9I/AAAAAAAAA3M/DOLH3V9VUVw/s1600/step_04.png
On the Active Directory Zone Replicator Scope step, select the To all DNS servers running on domain controllers in this domain option, then Next. http://3.bp.blogspot.com/-j9T4iw1wsoM/Ul6cIW5D--I/AAAAAAAAA20/FDac8vgAHk0/s1600/step_05.png
On the Zone Name step, enter your app domain name (i.e.,
informatix.com
), then Next. http://2.bp.blogspot.com/-Sjg57sgZIWA/Ul6cIZxH_DI/AAAAAAAAA3I/3bA0Gac5wV8/s1600/step_06.pngOn the Dynamic Update step, select the Allow only secure dynamic updates option, then Next. http://2.bp.blogspot.com/-NizLLixV3RM/Ul6cIpsVvjI/AAAAAAAAA3E/QwmTDG87cuw/s1600/step_07.png
Click Finish to complete the New Zone Wizard. http://2.bp.blogspot.com/-qyYczuXprSQ/Ul6cL51WQtI/AAAAAAAAA4M/r3mYzU82EiI/s1600/step_08.png
Right-click the newly created zone (
informatix.com
) and click New Alias (CNAME) from the context menu. http://3.bp.blogspot.com/-gGyihpSWX7g/Ul6cJZUlfxI/AAAAAAAAA3U/loZgLiflR1w/s640/step_09.pngOn the New Resource Record dialog, enter
*
as the Alias name and select the Browse button. http://1.bp.blogspot.com/-AKk9meMXHLE/Ul6cJjYLqvI/AAAAAAAAA3o/2GlAJcVvIzk/s1600/step_10.pngOn the Browse dialog, drill down to your server -> Forward Lookup Zones -> domain controller -> (same as parent folder). Ensure Hosts and Aliases (A and CNAME Records) is selected as the Record types and click the OK button. http://1.bp.blogspot.com/-G2MHgewOD5U/Ul6cJ4gnm6I/AAAAAAAAA3g/giHVWBL4Ga0/s1600/step_11.png
Click OK to close the New Resource Record dialog. http://1.bp.blogspot.com/-Gb0R2YyTzZ0/Ul6cKQY7s9I/AAAAAAAAA3w/Jue679PyPuo/s1600/step_12.png
Verify the SOA, NS and CNAME were properly created by selecting the new Forward Lookup Zone (
informatix.com
). http://1.bp.blogspot.com/-XgHkkp8k3Yo/Ul6cKjcJsGI/AAAAAAAAA4A/9qP0emj6Huo/s1600/step_13.pngIn SharePoint Central Administration, click the Manage service applications link. http://3.bp.blogspot.com/-2m-siS8LQFI/Ul6cLHAgIhI/AAAAAAAAA34/Tg8gF71HQR0/s1600/step_14.png Note
There are a variety of SharePoint service applications that may appear on this page, but the User Profile Service Application and App Management Service Application must both exist and be Started. Additionally, there must be at least 1 User Profile setup within the User Profile Service Application. For more information, see Overview of the User Profile service application in SharePoint Server 2013.Click the New button, then the App Management Service menu item. http://2.bp.blogspot.com/-oADwYz1UbfY/Ul6cLSFYO9I/AAAAAAAAA4U/euFxfdIOP4c/s1600/step_15.png
On the New App Management Service Application dialog, enter
AppManagementServiceApp
as the Service Application Name. Select the Use existing application pool option, then select SPAppPool from the drop-down. Ensure the Create App Management Service Application checkbox is checked. Click the OK button. http://2.bp.blogspot.com/-C4lM1YklF9E/Ul6cL-78EFI/AAAAAAAAA4Q/6jKa61O53xA/s1600/step_16.pngThe service application process may take a couple of minutes, depending on the development farm configuration. http://1.bp.blogspot.com/-pOGldpKro20/Ul6cPHEaBhI/AAAAAAAAA5M/w63ufpcb584/s1600/step_17.png
Once returned to the list of Service Applications, ensure both App Management Service Application and User Profile Service Application are Started. http://1.bp.blogspot.com/-AJeVmn7Zw-Q/Ul6cMveKPRI/AAAAAAAAA4o/bZ1fSMbJgBo/s640/step_18.png
Run the SharePoint 2013 Management Shell as an administrator. http://4.bp.blogspot.com/-IYTifAOxGvc/Ul6cM1mnfKI/AAAAAAAAA4k/NdnrlxZRRSw/s1600/step_19.png http://2.bp.blogspot.com/-s95AU_BDD9I/Ul6cNni2WaI/AAAAAAAAA4s/kGzgMKqeJZw/s640/step_20.png
Start the SPAdminV4 and SPTimerV4 service applications:
net start SPAdminV4
net start SPTimerV4
http://4.bp.blogspot.com/-AVjvd2vNupc/Ul6cNgwT6YI/AAAAAAAAA5A/MtXt9wdlpTA/s640/step_21.pngSet the domain used to host apps to the new zone created above:
Set-SPAppDomain "informatix.com"
http://3.bp.blogspot.com/-40xbhUG7jfg/Ul6cN4vID5I/AAAAAAAAA44/pIvPuSHnEQI/s640/step_22.pngStart the AppManagementServiceInstance and SPSubscriptionSettingsServiceInstance service instances:
Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"} | Start-SPServiceInstance
http://2.bp.blogspot.com/-fz0yq4zsSao/Ul6cR5--4LI/AAAAAAAAA6E/RX-jr0BbUco/s640/step_23.pngEnsure the AppManagementServiceInstance and SPSubscriptionSettingsServiceInstance service instances are Online:
Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"}
http://3.bp.blogspot.com/-5UaN2bubeYU/Ul6cO2IFwDI/AAAAAAAAA5Q/9bg_IRrVU1c/s640/step_24.pngCreate the SharePoint Subscription Service:
$account = Get-SPManagedAccount
"DC07\SPFarm"
$appPoolSubSvc = New-SPServiceApplicationPool -Name SettingsServiceAppPool -Account $account
$appPoolAppSvc = New-SPServiceApplicationPool -Name AppServiceAppPool -Account $account
$appSubSvc = New-SPSubscriptionSettingsServiceApplication –ApplicationPool $appPoolSubSvc –Name SettingsServiceApp –DatabaseName SettingsServiceDB
$proxySubSvc = New-SPSubscriptionSettingsServiceApplicationProxy –ServiceApplication $appSubSvc
$appAppSvc = New-SPAppManagementServiceApplication -ApplicationPool $appPoolAppSvc -Name AppServiceApp -DatabaseName AppServiceDB
$proxyAppSvc = New-SPAppManagementServiceApplicationProxy -ServiceApplication $appAppSvc
Note
Make sure to change the"DC07\SPFarm"
to your farm managed account (or create a new farm-level managed account). http://2.bp.blogspot.com/-TIxFljDJAuM/Ul6cPQ4cMiI/AAAAAAAAA5Y/n2HldS3GsuQ/s640/step_25.pngSet the name for the site subscription:
Set-SPAppSiteSubscriptionName -Name "app" -Confirm:$false
http://3.bp.blogspot.com/-2EPzFy0iXDk/Ul6cPqUSZtI/AAAAAAAAA5g/X-couVJyoiM/s640/step_26.pngCreate a new Developer Site site collection for local App deployment. In Central Administration, click Create site collections. http://2.bp.blogspot.com/-26Q8xKpPxFk/Ul6cQIFuYsI/AAAAAAAAA5w/xyY5je9XWtM/s1600/step_27.png
On the Create Site Collection page, enter the following and click the OK button:
Field Value Title App Dev Description Application Development URL dev Template Collaboration -> Development Site Primary Administrator Administrator http://2.bp.blogspot.com/-awzJZdVOVA8/Ul6cQY3tLCI/AAAAAAAAA5s/jdjPwrulS2c/s640/step_28.png
Once the developer site has been created, click the OK button to return to Central Administration. http://1.bp.blogspot.com/-AXGWElG0FiE/Ul6cQ9zyO3I/AAAAAAAAA50/ulseUIiPf3s/s640/step_29.png
(Optional) In some cases, you might receive unauthorized errors or multiple login requests after you've deployed a SharePoint app. One solution is to Disable Loopback Check in Windows. I usually just disable the loopback check at this point to avoid headaches down the road.
That's it - now you're ready to deploy your SharePoint apps to your local SharePoint development environment.
Video Instructions
Downloads
This article as a PDF Create an Isolated App Domain in SharePoint 2013.pdf (1.0M).
The commands used in this article IsolatedAppDomain-Commands.txt (1.7K).