Create a Virtual Machine for Tridion development

Looking back at 2013 we can see that there has been an increased interest in DD4T, a light-weight framework for creating dynamic websites with Tridion and MVC. It supports Tridion 2009/2011/2013 and both Java (Spring MVC) and .NET (MVC3 and MVC4).

This is the first part in a series of two posts where I will explain how to set-up a Virtual Machine development environment with Tridion and DD4T. In this post I will explain the steps needed to install and configure a Windows server with a fresh Tridion 2011SP1 installation. If you already have a Tridion development environment and only want to configure Tridion for usage with DD4T, then go on to the second post setting up a DD4T development environment.

Prerequisites

You will need the following software to get you started:

  • Windows 2008R2 SP1 64bit ISO
  • SQL Server 2008R2 Standard 64bit ISO
  • Tridion 2011SP1 installation files, with optional Hotfix Release 2
  • Tridion 2011SP1 license.xml and cd_licenses.xml files
  • Visual Studio 2013, with optional ReSharper
  • VirtualBox or equivalent (such as VMWare WorkStation) to run a Virtual Machine

Configure the Windows 2008R2 Virtual Machine

Start VirtualBox and create a new Virtual Machine with the Windows 2008  ISO. The hardware resources you need to reserver for the VM highly depend on the specifications of your local computer. I used 2 CPUs, 4Gb RAM and 40Gb HD space, which should be enough for your local development needs. Change this to your own preferences, but remember to check the Tridion license restrictions on maximum CPUs and RAM. After the installation of Windows is completed you can set the following configuration settings to make your life as a developer a little bit more convenient:

  • Disable the password complexity requirements. Go to the Local Group Policy Editor "Computer Configuration > Windows Settings > Security > Account Policies > Password Policy" and set "Password must meet complexity requirements" to disabled.
  • Disable the Shutdown Event Tracker (the confirmation dialog box when shutting down or restarting the server). Go to the Local Group Policy Editor: "Computer Configuration > Administrative Templates > System" and set "Display Shutdown Event Tracker" to disabled.
  • Auto login the administrator account. Go to Start > Run, type "control userpasswords2", click the Administrator account you want to login automatically and uncheck the "Users must enter a user name and password to use this computer" checkbox.
  • Rename the server to comply with the Tridion license file.

Install and configure SQL Server 2008

  • Map the SQL Server 2008R2 ISO image in VirtualBox and install SQL Server, including SQL Server Management Studio. When asked for a SQL Administrator user select the local Administrator account.
  • After the installation of SQL Server is completed start SQL Server Management Studio and connect to the SQL Server.
  • Go to Security > Logins and set the password of the sa user, without enforcing password policy. I mostly use passwords identical to the username on my development machines.
  • Go to the SQL Server properties. Select the Memory page and set the Maximum server memory (in MB) to 1000MB. SQL Server is known for allocating all available RAM to its own processes. By setting the max server memory you limit the size of the SQL Server buffer pool, but not of the other SQL components such as extended stored procedures, COM objects, non-shared DLLs, EXEs, and MAPI components. When you experience performance problems because of insufficient RAM you can increase the RAM on the virtual machine, or run a separate SQL Server instance. Read more about the effects of min and max server memory.
  • Go to the Security page and select "SQL Server and Windows Authentication mode" for the "Server authentication".
  • Click OK and restart SQL Server.

Install IIS, Visual Studio and other tools

  • Go to Server Manager > Roles and add the IIS Server Role with everything selected, except FTP Server and IIS Hostable Web Core as you probably won't need them.
  • Mount the Visual Studio 2013 ISO and install Visual Studio. After the installation is completed you can optionally install ReSharper, a very handy tool for Visual Studio.
  • Install other optional developer tools, such as NotePad++, Chrome, FireFox (with the relevant plug-ins such as WebDeveloper Toolbar, FireBug, FireQuery), IE11, Git and SourceTree.

Install Tridion 2011SP1

The first step when installing a fresh copy of Tridion is to create a Tridion CM database. The Tridion database installer has a dependency on MSXML, so first download and install MSXML 4.0 SP3. Now go to the Tridion installation files and start the DatabaseManager.exe. Create a new Content Manager Database and Logging Database. Go to the Tridion installation files and start SDLTridion2011SP1.exe. I use the following settings for my development environments:

Tridion 2011SP1 installation options
Tridion 2011SP1 installation options

During the installation you're asked for the Tridion license file, so keep it ready. For your own convenience, use identical usernames and passwords when asked for Tridion database users. Restart your server after the installation is completed. After your server is restarted you can apply the Tridion 2011SP1 Hotfix Rollup 2, if applicable. First run the SQL query on the Tridion CM database and then the installer to update the Tridion Content Manager. When the Tridion Content Manager is installed you can install the Content Delivery application. In production environments you usually would configure the Content Delivery application on a separate (presentation) server, but for now we will install everything on the same server.

  • Start the Content Delivery Setup.
  • Select every option that's available during the install, including the Content Deployer Windows Service. On my development environments I always use the Deployer Windows Service and publish content from Tridion to the local file system. Another option would be to configure a .Net web service, but for development environments I think that's to cumbersome. Follow the KISS principle.
  • After the installation is finished you can configure the storage configuration. Open the cd_storage_conf.xml file located at C:\Program Files (x86)\Tridion\config\ and add the Tridion Broker Database as default storage location. Refer to the Content Deployer installation manual for detailed instructions on setting up the Content Deployer.

Now your Windows server is up and running and the Tridion Content Manager and Content Delivery are all installed. One final recommendation is to install a custom Tridion 2011 PowerShell profile, to quickly manage all Tridion services from the PowerShell. Read my previous post on installing a custom Tridion PowerShell profile. Next step is configuring Tridion for use with DD4T. Read my next posts about setting up a Tridion BluePrint, configuring the Tridion Deployer and publishing your first page with DD4T.

Remco Rakers

Engineer, programmer, software developer. Finding simple solutions for difficult problems. Things that interest me are React, .Net, Docker, CI/CD and agile development. When I'm not behind a computer I like to go rock climbing and running.