Share via


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)

  1. Run the DNS Manager from the Windows Start Screen.
  2. In DNS Manager, right-click Forward Lookup Zones, then the New Zone context menu.
  3. Click Next on the New Zone Wizard dialog.
  4. On the Zone Type step, select Primary zone, then Next.
  5. On the Active Directory Zone Replicator Scope step, select the To all DNS servers running on domain controllers in this domain option, then Next.
  6. On the Zone Name step, enter your app domain name (i.e., informatix.com), then Next.
  7. On the Dynamic Update step, select the Allow only secure dynamic updates option, then Next.
  8. Click Finish to complete the New Zone Wizard.
  9. Right-click the newly created zone (informatix.com) and click New Alias (CNAME) from the context menu.
  10. On the New Resource Record dialog, enter * as the Alias name and select the Browse button.
  11. 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.
  12. Click OK to close the New Resource Record dialog.
  13. Verify the SOA, NS and CNAME were properly created by selecting the new Forward Lookup Zone (informatix.com).
  14. In SharePoint Central Administration, click the Manage service applications link.
  15. Click the New button, then the App Management Service menu item.
  16. 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.
  17. The service application process may take a couple of minutes, depending on the development farm configuration.
  18. Once returned to the list of Service Applications, ensure both App Management Service Application and User Profile Service Application are Started.
  19. Run the SharePoint 2013 Management Shell as an administrator.
  20. Start the SPAdminV4 and SPTimerV4 service applications:
    net start SPAdminV4
    net start SPTimerV4
  21. Set the domain used to host apps to the new zone created above:
    Set-SPAppDomain "informatix.com"
  22. Start the AppManagementServiceInstance and SPSubscriptionSettingsServiceInstance service instances:
    Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"} | Start-SPServiceInstance
  23. Ensure the AppManagementServiceInstance and SPSubscriptionSettingsServiceInstance service instances are Online:
    Get-SPServiceInstance | where{$_.GetType().Name -eq "AppManagementServiceInstance" -or $_.GetType().Name -eq "SPSubscriptionSettingsServiceInstance"}
  24. 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).
  25. Set the name for the site subscription:
    Set-SPAppSiteSubscriptionName -Name "app" -Confirm:$false
  26. Create a new Developer Site site collection for local App deployment. In Central Administration, click Create site collections.
  27. 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
  28. Once the developer site has been created, click the OK button to return to Central Administration.
  29. (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.
  30. That's it - now you're ready to deploy your SharePoint apps to your local SharePoint development environment.

Graphical Instructions

  1. Run the DNS Manager from the Windows Start Screen. http://3.bp.blogspot.com/-UKfxS_y-JOE/Ul6ZQpbnSCI/AAAAAAAAA2k/aOHqFRCyi60/s320/step_01.png

  2. 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

  3. Click Next on the New Zone Wizard dialog. http://4.bp.blogspot.com/-2ym_bbIqh7w/Ul6cHwtDsfI/AAAAAAAAA2w/IcfQxb_BdJs/s1600/step_03.png

  4. On the Zone Type step, select Primary zone, then Next. http://1.bp.blogspot.com/-asrvCoBtl1c/Ul6cH_g2H9I/AAAAAAAAA3M/DOLH3V9VUVw/s1600/step_04.png

  5. 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

  6. 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.png

  7. On 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

  8. Click Finish to complete the New Zone Wizard. http://2.bp.blogspot.com/-qyYczuXprSQ/Ul6cL51WQtI/AAAAAAAAA4M/r3mYzU82EiI/s1600/step_08.png

  9. 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.png

  10. On 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.png

  11. 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. http://1.bp.blogspot.com/-G2MHgewOD5U/Ul6cJ4gnm6I/AAAAAAAAA3g/giHVWBL4Ga0/s1600/step_11.png

  12. Click OK to close the New Resource Record dialog. http://1.bp.blogspot.com/-Gb0R2YyTzZ0/Ul6cKQY7s9I/AAAAAAAAA3w/Jue679PyPuo/s1600/step_12.png

  13. 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.png

  14. In 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.

  15. Click the New button, then the App Management Service menu item. http://2.bp.blogspot.com/-oADwYz1UbfY/Ul6cLSFYO9I/AAAAAAAAA4U/euFxfdIOP4c/s1600/step_15.png

  16. 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.png

  17. The 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

  18. 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

  19. 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

  20. 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.png

  21. Set 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.png

  22. Start 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.png

  23. Ensure 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.png

  24. 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 managed account (or create a new farm-level managed account). http://2.bp.blogspot.com/-TIxFljDJAuM/Ul6cPQ4cMiI/AAAAAAAAA5Y/n2HldS3GsuQ/s640/step_25.png

  25. Set 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.png

  26. Create 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

  27. 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

  28. 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

  29. (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.

  30. That's it - now you're ready to deploy your SharePoint apps to your local SharePoint development environment.

Video Instructions

View

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).