This is part of a larger series in building a proper build process. For more information and additional series links, check out the introductory post.
Alright, this is a little bit of a cheat post but I wanted to emphasize the simplicity of these setups.
Installing the OSes on our VMs
- Select whichever edition of Windows Server you’d like to install if prompted.
- Follow the default setup options or customize as you like. Allow it to use the full space of the Virtual HDD we created.
- Start up the VM and proceed through normal, default setup options.
- Allow the OS to use the standard partition format and use the entire virtual disk when it asks.
- You will have to set up a root password and an additional user. For memory’s sake in the demo, I made the root and user password the same, and made the user my first name. This is, again, not recommended for a production environment. Use a very secure password for the root user, and don’t be a dunce about your user account’s password, either.
- Disable the Firewall and SELinux. These are both important components, and I may turn them on again after everything is configured, but due to my own limitations on their intricacies and the demo purposes, we’ll leave them. IMPORTANT: DO NOT run a production system without these turned on. I’ll likely do a follow-up post later indicating ways to do this more securely.
- I chose the Gnome desktop environment because it was the default. Choose the flavor that suits you.
- When presented with the option for additional components, I checked off
Server - GUI. To be honest, I’m not even sure what exact capabilities this gives us; it just seemed like a good gut choice. I’ll try to look up more on that later (maybe)
IE 9 – But not through Windows Update
You should have IE 9 on a Windows Server. To be honest, I’m not sure why, but it feels right to have the OS-supported “standard” available, even if it’s not your first go-to browser. IE 9 on Windows Server provides a great layer of protection over potentially harmful actions, so I use it when I’m in “caution mode”.
However, you’ll likely want to obtain IE via my method described here, because as of this writing the MS Installer on Windows Update is screwed up.
An alternative browser to IE
You should also have a browser on your machine for those I-know-what-I’m-doing-and-just-get-out-of-my-way-damnit times when you don’t feel like dealing with IE’s extra protection. I use Google Chrome, but pick whichever browser suits you.
VirtualBox Guest Additions
This is as easy as clicking
Devices from the VirtualBox host window (the window that surrounds your VM), and then clicking
Install Guest Additions.
VirtualBox pops up an installer on the screen. Follow the default steps to install, or select custom options.
I highly recommend downloading the Web PI (Web Platform Installer) from Microsoft. It’s got a great interface for quick configuration of applications and installs.
WebPI Downloads – Install the following packages:
- .NET Framework 4.0
- IIS 7 recommended settings
- ASP.NET MVC 3
VirtualBox Guest Additions
Devicesfrom the VirtualBox Host screen (the screen surrounding your VM) and click
Install Guest Additions…
- This will bring up a link to a CD on your CentOS desktop, indicating the CD is mounted.
- From there, follow these directions. Leave a message in the comments if you’d like me to expound on the subject.
On Both OSes
Updates and Patches!
This is very important. I did the following.
- Run Windows Update. Restart. Run Windows Update.
- Repeat this process until there are no more updates available.
- Go to the Software Updater, which you can access via
Applications > System Tools > Software Updater, as seen below:
- Click “Apply Updates” for all available updates.
- Restart (if necessary).
- Repeat process until there are no more updates available.
Initial VM Snapshot
This is optional, but I find that it’s always helpful to be able to go back to the beginning when necessary, so I always take a snapshot of VMs after they’re created.
- First, shut down all your VMs so you get a clean snapshot state.
- Click on an image and then click the
Snapshotsbutton at the upper-right corner, shown below:
- Right-click on
Current Stateand select
Take Snapshot, as shown below. You’ll be asked to save the snapshot; I choose the name “Initial Setup” the first time I go through the process.
That’s it! Next, we’ll look at setting up our source code management system.
I'd love to hear any comments on this series. Find it useful? Think there's a better way to implement the technique or something I should have mentioned? Please drop a line in the comments to help me improve the series!
This article is Part 3 in a 10-Part Series.
- Part 1 - Building a Build Process: Introduction
- Part 2 - Building A Build Process: Groundwork -- The VMs
- Part 3 - This Article
- Part 4 - Building a Build Process: Source Code Management via Subversion and Apache on CentOS
- Part 5 - Building a Build Process: Securing Subversion's Connection via TLS
- Part 6 - Building a Build Process: TortoiseSVN Client Connection and Repository Layout
- Part 7 - Building a Build Process: Creating a Custom MSBuild File
- Part 8 - Building a Build Process, Part 6b: MSBuild Integration With Cassini and Visual Studio
- Part 9 - Building a Build Process: Installing CruiseControl.NET
- Part 10 - Building a Build Process: CruiseControl.NET Preparation