So you have your TeamCity system, but annoyingly if you already have IIS on the server your TeamCity probably won’t be accessible on standard web port. Wouldn’t it be nice to be able to host or access TeamCity via IIS 7.5 via one firewall rule, and get access to TeamCity from any coffee shop or site with restricted internet in the world? Its much easier than you think in IIS 7.5, a real 30 second job to get it working using Application Request Routing (which is normally used to load balance webfarms) to setup a reverse proxy.
1. Download and Install Application Request Routing for IISS (2.0), using the web platform installer
2. Start Internet Information Services Manager (IIS Manager). Left Click on the Server Name Node to bring up the server configuration in the right pan and double click on Application Request Routing in the IIS Section.
3. A Server Farms Node will Appear in the left hand side treeview, right click on the node and select Create Server Farm. Give your new server Farm/reverse proxy a name
4. Press Next, enter localhost or your TeamCity server name, press advanced and change the port to the port that your TeamCity currently runs under.
5. Press Finish, and press yes when prompted if you want the rewrite rules written for you.
6. Finally navigate to your TeamCity Installation using a port free url go to administration->Server Configuration and remove the port from the Server Url and your done.
7. If you want to run other websites on this IIS Server you will need to continue onto Part 2- setup filtering so only specific hosts are forwarded onto TeamCity.