Playing Sitecore and Habitat on Docker

As a Sitecore’s developer, you may want to have several Sitecore ‘s instances in various versions on your machine, right? We all know the installation is quite complicated, moreover, we may meet the troubles on infrastructure, such as, IIS, prerequisites and so on. Therefore, we always want to have some ready Sitecore’s instances and then we just need to start anytime, even reset to fresh instances rapidly. There are 2 solutions for this need:

  • Virtual Machine
  • Docker —-> This is my choice

Why do I choose Docker?

The comparison between Virtual Machine and Docker is out of scope of this post but you can get it from here. From my point of view, I choose Docker because of the following reasons:

  • Docker is a trend in nowadays
  • Uses Docker does not require Windows’s licenses as Virtual Machine

Where do I start from?

I am not expert in Docker, even Docker with Windows Container. Hence, I need to looking for from the community. Fortunately, I was inspired by this repository on Github – Repository of Sitecore Docker base images. After go through this repository, I decided to develop for myself, but the idea and some code are borrowed from this. I’d like to thanks the author – Per Manniche Bering and also his blog

What did I do?

Here are my purposes while developing Docker’s images for Sitecore 9.1.0 (XP0) and Sitecore 9.1.1 (XP0)

  • Build the following Docker’s images for Sitecore and its relative
    • Sitecore’s site
    • Identity Server
    • xConnect
    • xConnect_AutomationEngine
    • xConnect_IndexWorker
    • xConnect_ProcessingEngine
    • Solr Server
    • SQL Server
  • Then, deploy Habitat on Docker’s container of Sitecore 9.1.0 only (since Habitat has not been updated to Sitecore 9.1.1)
  • Finally, the ability of debugging

Let’s start

  1. Clone my repository to your local –
  2. Follow step by step from It’s about
    1. Prerequisites
    2. Preparation
    3. Build Images Base (WebServer, SQLServer, SolrServer)
    4. Build Images for Sitecore and its relative
    5. Start the containers
    6. Deploy Habitat
    7. Enable Remote Debug in Container
    8. Uses Visual Studio 2017 to debug Habitat on Docker’s container
    9. Known Issues
    10. Resources


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s