Clarity eCommerce Setup Guide v2.2
Setup folders
By convention, Clarity stores repositories in the “C:\Data\Projects”
folder 1. Open Command Prompt 2. md C:\Data\Projects\CEF-Product 3.
md C:\Data\Projects\CEF-DNN9 4. md C:\Data\Projects\ClarityConnect
Setup the DBMS
Install/run SQL Server
- Download and install SQL Server 2016 and SQL Server Management Studio
(SSMS) or use an instance already installed and skip step 2 below if so.
- Open SSMS (Microsoft SQL Server Tools 17 > SSMS) a. For “Server
Name:” enter “.\SQLEXPRESS” or “.” for the default instance. b. For
“Authentication:” select “Windows Authentication”
Add Network Service user or Domain User
- Right-click “Security\Logins” folder, then click “New Login…” a. For
“Login name:” enter “NT AUTHORITY\NETWORK SERVICE” if using Network
Service user or enter the domain\User.Name for a named service user if
using a specific user account to lock down security for that user
(recommended).
Add “CEF” DB
b. Add a new blank database named “CEF” (or note the name and use
appropriate name below in place of “CEF” database references).
Add “DNN” DB
- Right-click the “Databases” folder, then click “Restore Files and
Filegroups…” a. Click “Device”, click “…”, then click “Add” b. For
“Backup Location:” enter location of “DNN9_CEF_backup.bak”, then click
“OK” c. For the database name, enter “DNN” (or note the name and use
appropriate name below in place of “DNN” database references).
Add “Connect” DB
- Right-click the “Databases” folder, then click “Restore Files and
Filegroups …” a. Click “Device”, click “…”, then click “Add” b. For
“Backup Location:” enter location of “CC_backup.bak”, then click “OK”
c. For the database name, enter “Connect” (or note the name and use
appropriate name below in place of “Connect” database references).
Add Permissions to DBs
- Re-locate the “Security\Logins” folder and then expand. a. Find the
user created in step #3 above and right click, then selecting
“Properties >> User Mapping”. b. Check the databases above from
the list “Users mapped to this login” c. For each database checked, make
the user db_owner role (note that you can also reduce these rights down
for some use cases of the platform to further reduce security
footprint).
Setup the local config files
- Copy the contents of the “Solution Items” folder into the
“C:\Data\Projects\CEF-Product\Solution Items” folder
appSettings
- Open the “C:\Data\Projects\CEF-Product\Solution Items” folder 3.
Open the “appSettings.config” file in any text editor/IDE a. Set
“SystemValues.SiteRootUrl” to any value found in the DNN DB’s
“PortalAlias” table b. Set “SystemValues.SiteRootUrlSSL” to same value,
but prefixed with “https” c. Set “SystemValues.Providers.PluginPaths” to
appropriate path (i.e. “C:\Data\Projects\CEF-Product\Plugins”) d.
Set “SystemValues.Files.Scheduler.PluginsPath” to appropriate path (i.e.
“C:\Data\Projects\CEF-Product\07.Clarity.Ecommerce.Scheduler\Plugins”)
connectionStrings
- Search for and open the “connectionStrings.config” files in any text
editor/IDE a. Replace “SQLB.corp.claritymis.com\SQL2016” with
“.\SQLEXPRESS” or the appropriately named SQL instance. b. Replace
“user id=SQLLogin;password=p4ssw0rd;” with “Integrated Security=true;”
or with the domain login information for the desired user. c. Ensure
“Initial Catalog=” is set to the correct database name from above.
web.connectionStrings (DNN)
- Copy a “connectionStrings” file into the
“C:\Data\Projects\CEF-DNN9” folder, then rename it from
“connectionStrings” to “web.connectionStrings” 6. Open the copied
“web.connectionStrings” file in an text edior/IDE a. Replace
“ClarityEcommerceEntities” with “SiteSQLServer” b. Ensure “Initial
Catalog=” is set to the “DNN” DB (i.e. “DNN9_CEF_backup.bak”)
Setup the Web Server
Install/run Internet Information Services (IIS)
- Open the “Run” dialog ( + R) a. For “Open:” enter
“C:\Windows\System32\OptionalFeatures.exe”, then click “OK” 2. In
“Turn Windows features on or off”, check “Internet Information
Services”, then click “OK” 3. Open IIS Manager (Start > Windows
Administrative Tools > IIS Manager)
Set Application Pool defaults
- In the “Connections” panel, navigate to “Application Pools” 5. Click
“Set Application Pool Defaults…” a. Set “.NET CLR Version” to “v4.0” b.
Set “Start Mode” to “Always Running” c. Set “Process Model >
Identity” to “Network Service” d. Set “Process Model > Idle Time-out
(minutes)” to “0” e. Set “Recycling > Regular Time Interval
(minutes)” to “0” f. Click “OK”
Add Application Pools
- Click “Add Application Pool…” a. For “Name:” enter “DNN” 7. Repeat
the previous step three more times, using names “API”, “Scheduler”, and
“Connect”
Add “Connect” site
- In the “Connections” panel, navigate to “Sites” 9. Click “Add
Website…” a. For “Site Name:” enter “Connect” b. Click “Select…”, choose
“Connect” from the dropdown menu, then click “OK” c. For “Physical
path:” enter
“C:\Data\Projects\ClarityConnect\05.Clarity.Connect.Server” d. For
“Host name:” enter a valid URL (i.e. “connect.local”), then click “OK”
Setup the Web Server (continued)
Add “DNN” site
- Click “Add Website…” a. For “Site Name:” enter “DNN” b. Click
“Select…”, choose “DNN” from the dropdown menu, then click “OK” c. For
“Physical path:” enter “C:\Data\Projects\CEF-DNN9” d. For “Host
name:” enter the “SystemValues.SiteRootUrl” value from the
“appSettings.config” file, then click “OK” e. Select the new “DNN” site
in the “Connections” panel, then click “Configuration Editor” f. Click
the “Section” dropdown at the top and choose
“system.webServer/rewrite/allowedServerVariables” g. Click the “…” (for
Collection) and add the following names: a. ORIGIN_HOST b.
RESPONSE_Access-Control-Allow-Origin h. Close the modal and click Apply
on the “Actions” panel
Add “API” application
- In the “Connections” panel, right-click on the “Sites > DNN >
DesktopModules > ClarityEcommerce” folder, then click “Add
Application…” a. For “Alias:” enter “API” b. Click “Select…”, choose
“API” from the dropdown menu, then click “OK” c. For “Physical path:”
enter “C:\Data\Projects\CEF-Product\06.Clarity.Ecommerce.Service” d.
Check “Enable Preload”, then click “OK”
Add “Scheduler” application
- In the “Connections” panel, right-click on the “Sites > DNN >
DesktopModules > ClarityEcommerce” folder, then click “Add
Application…” a. For “Alias:” enter “Scheduler” b. Click “Select…”,
choose “Scheduler” from the dropdown menu, then click “OK” c. For
“Physical path:” enter
“C:\Data\Projects\CEF-Product\07.Clarity.Ecommerce.Scheduler” d.
Check “Enable Preload”, then click “OK”
Add “UI” virtual directory
- In the “Connections” panel, right-click on the “Sites > DNN >
DesktopModules > ClarityEcommerce” folder, then click “Add Virtual
Directory…” a. For “Alias:” enter “UI” b. For “Physical path:” enter
“C:\Data\Projects\CEF-Product\08.Clarity.Ecommerce.UI” c. Click “OK”
Add “documentation” virtual directory
- Right-click the “UI” virtual directory created above, then click
“Add Virtual Directory…” a. For “Alias:” enter “documentation” b. For
“Physical path:” enter
“C:\Data\Projects\CEF-Product\08.Clarity.Ecommerce.APIReference” c.
Click “OK”
Setup the Web Server (continued)
Update Windows hosts file
- Run any text editor/IDE as an administrator 16. Open
“C:\Windows\System32\drivers\etc\hosts” a. Add “127.0.0.1 [‘DNN’
site host name]” at the bottom b. Add “127.0.0.1 [‘Connect’ site host
name]” at the bottom 17. Close and save changes
Setup the IDE
Install .NET Framework 4.6.2 Developer Pack
- Download and install the .NET Framework 4.6.2 Developer Pack
Setup remaining applications
Java Runtime Environment (JRE)
- Install the JRE (choose SE 8)
Elasticsearch
- Run “elasticsearch-5.5.1.msi” a. For “Account Information” select
“Use NT AUTHORITY\NETWORK SERVICE” or a named domain service account to
restrict security rights. b. For “Memory” increase to “4 GB” c.
Otherwise use default settings during the installation.
Redis
- Install Redis on Windows 3.2 d. Check “Add the Redis installation
folder to the PATH environment variable”