Table of Contents
Introduction
This document describes various aspects of deployment in relation to the EPiServer CMS platform. In many large organizations, the actual content production is often done in a protected corporate zone instead of directly on the public server. By using the
staging and mirroring features of EPiServer CMS, content is pushed to the delivery environment. Deployment in EPiServer CMS involves the distribution of content and code packages between the development and production environments.
How to run a successful web development project lead to many questions to consider, both
for customers, project managers and developers. It is a common practice to develop a site running on a development server
and then to deploy it onto a test server, and after a successful test, to
deploy the website on the live production web server.
- What preparations are needed, which decisions must be taken?
- What technical aspects must be considered during
development, how to build content and how is the acceptance testing done?
- Migrate content from an existing website, or create new from scratch?
- Which features will be implemented on the website, which in turn will affect
development and configuration?
Considerations for the Deployment Environment
The deployment environment can be divided into the following parts:
- Development is the local environment where developers in the project team create code and do their unit tests.
- Integration is the shared code repository where builds are done before deploying to the test environment.
- Test (Quality Assurance QA) is the environment where the acceptance test is carried out. Resembles the delivery environment as much as possible.
- Deployment is the testing environment is deployed into
production.
- Content Management is the area where the actual content production is carried out, often on
separate servers behind a firewall.
- Content Delivery is the public environment where the visitor accesses the content, the servers are often load balanced for availability reasons.
Considerations for the Development Environment
Setting up a development environment is quick and easy using the EPiServer Deployment Center.
You can choose between an express installation or a custom installation. The
platform is delivered with an optional set of page templates. From the download
files, you will be creating a new website and setting up a database, together
with a Visual Studio project folder and a file share.
Choosing a Development Strategy
The way you set up your development environment can influence the way you build
and deploy your EPiServer solution. For example, if your production website will
be running a web server with IIS7 it may well be suitable to create a website in
EPiServer Deployment Center.
The way you deploy your solution could well be influenced by how
you set up the initial development environment. For example, if you are not using
IIS as a part of your deployment environment you may need to maintain a
separate web.config for your development and production environments.
Why would you want to create an EPiServer solution based on the public templates
and/or demo templates from the EPiServer Deployment Center? |
- You will create a project that is configured for the planned target platform.
- If you are using any additional EPiServer modules for your project it is beneficial to use this
approach since deploying modules requires Deployment Center “based” projects.
- You will have many EPiServer CMS templates on which you can continue to develop
upon. Using the public or demo templates you will have an project advanced
starting point.
|
Why would you want to create an “empty” website from the
EPiServer Deployment Center? |
- You will create a project that is configured for
the planned target platform.
- If you are using any additional EPiServer
modules for your project it is beneficial to use this approach since deploying
modules requires Deployment Center “based” projects.
- If your production
environment uses IIS7 this is probably the best alternative since the Visual
Studio project does not really support IIS7 style web.config (see the section:
Why would you want to create an EPiServer site in Visual Studio?).
- You will be creating a clean installation without EPiServer templates, starting out with
a “clean slate” can sometimes be desired.
|
Why would you want to create an EPiServer project in Visual Studio using the EPiServer project template? |
- By creating the project from Visual Studio you will have a project that you can
check out on other machines without bothering with what version of IIS you have
on the development machine since Visual Studio WebServer is used by default.
- One disadvantage with this approach is that if your project is targeting IIS7
because then you will need to maintain a separate web.config for your test and
production environment.
- By creating the project from Visual Studio you will
have a project you do not need to be concerned with which version of IIS you
have on the development machine since you are able to use the inbuilt Visual
Studio Web Server.
|
Do you find this information helpful? Please log in to provide feedback.