How to Run Sitecore 10.3.x in Docker on Windows 10

I wanted to load these asset images on Windows 10, but I didn't find any examples online:
sitecore-docker-tools-assets: general Sitecore container tools and utilitiessitecore-spe-assets: PowerShell automation via Sitecore PowerShell Extensionssitecore-management-services-xm1-assets: management services
First start by getting the SXP Sitecore Container Deployment 10.3 from Github: https://github.com/Sitecore/container-deployment/releases/tag/10.3.1.009452.1563
In the .zip, you will find two folders: ltsc2019 and ltsc2022.
Docker tip
While the example files provided are good, there are a few more asset images that are worth loading: sitecore-docker-tools-assets, sitecore-spe-assets, and sitecore-management-services-xm1-assets.
Certain images, such as modules, are intended only as a source during your custom Sitecore image build and you never use them at runtime. These asset images are named accordingly with a -assets suffix.
Below is an incomplete .env file for reference:
REGISTRY=scr.sitecore.com/sxp/SITECORE_DOCKER_REGISTRY=scr.sitecore.com/sxp/SITECORE_MODULE_REGISTRY=scr.sitecore.com/sxp/modules/SITECORE_TOOLS_REGISTRY=scr.sitecore.com/tools/SITECORE_VERSION=10.3-ltsc2019EXTERNAL_IMAGE_TAG_SUFFIX=ltsc2019
TOOLS_VERSION=10.3.0-1809SPE_VERSION=6.4.0.65-1809MANAGEMENT_SERVICES_VERSION=5.2.113-1809Now consume the environment variables in docker-compose.yml:
version: "2.4"
services:
traefik: command: - "--ping" - "--api.insecure=true" - "--providers.docker.endpoint=npipe:////./pipe/docker_engine" - "--providers.docker.exposedByDefault=false" - "--providers.file.directory=C:/etc/traefik/config/dynamic" - "--entryPoints.websecure.address=:443" - "--entryPoints.web.address=:80" ports: - "8080:80" volumes: - source: \\.\pipe\docker_engine target: \\.\pipe\docker_engine type: npipe - ./traefik:C:/etc/traefik depends_on: id: condition: service_healthy cm: condition: service_healthy
mssql: mem_limit: ${MEM_LIMIT_SQL:-2GB} volumes: - .\data\mssql:c:\data restart: unless-stopped
mssql-init: image: ${REGISTRY}${COMPOSE_PROJECT_NAME}-xp1-mssql-init:${VERSION:-latest} build: context: ./build/mssql-init args: BASE_IMAGE: ${SITECORE_DOCKER_REGISTRY}sitecore-xp1-mssql-init:${SITECORE_VERSION} SPE_IMAGE: ${SITECORE_MODULE_REGISTRY}sitecore-spe-assets:${SPE_VERSION}
solr: volumes: - .\data\solr:c:\data
solr-init: image: sxp/sitecore-xp1-solr-init:10.3.2-ltsc2019 build: context: ./build/solr-init args: BASE_IMAGE: ${SITECORE_DOCKER_REGISTRY}sitecore-xp1-solr-init:${SITECORE_VERSION}
cm: image: ${REGISTRY}${COMPOSE_PROJECT_NAME}-xp0-cm:${SITECORE_VERSION} build: context: ./build/cm args: BASE_IMAGE: ${SITECORE_DOCKER_REGISTRY}sitecore-xp0-cm:${SITECORE_VERSION} TOOLING_IMAGE: ${SITECORE_TOOLS_REGISTRY}sitecore-docker-tools-assets:${TOOLS_VERSION} SPE_IMAGE: ${SITECORE_MODULE_REGISTRY}sitecore-spe-assets:${SPE_VERSION} MANAGEMENT_SERVICES_IMAGE: ${SITECORE_MODULE_REGISTRY}sitecore-management-services-xm1-assets:${MANAGEMENT_SERVICES_VERSION} environment: SITECORE_LICENSE_LOCATION: C:\license\license.xml volumes: - .\data\cm\website:C:\deploy - .\serialization:C:\serialization - .\data\cm\logs:C:\inetpub\wwwroot\App_Data\logs - .\data\cm\LmapProcessFiles:C:\inetpub\wwwroot\App_Data\LmapProcessFiles - ${LICENSE_PATH}:C:\license entrypoint: powershell -Command "& C:\\tools\\entrypoints\\iis\\Development.ps1" mem_limit: ${MEM_LIMIT_CM:-4GB} restart: unless-stopped labels: - "traefik.http.middlewares.redirect-to-https.redirectScheme.scheme=https" - "traefik.http.routers.cm.entrypoints=web" - "traefik.http.routers.cm.middlewares=redirect-to-https"
cd: image: ${REGISTRY}${COMPOSE_PROJECT_NAME}-xp0-cd:${SITECORE_VERSION} build: context: ./build/cd args: BASE_IMAGE: ${SITECORE_DOCKER_REGISTRY}sitecore-xp1-cd:${SITECORE_VERSION} TOOLING_IMAGE: ${SITECORE_TOOLS_REGISTRY}sitecore-docker-tools-assets:${TOOLS_VERSION} environment: SITECORE_LICENSE_LOCATION: C:\license\license.xml volumes: - .\data\cd\website:C:\deploy - .\data\cd\logs:C:\inetpub\wwwroot\App_Data\logs - ${LICENSE_PATH}:C:\license entrypoint: powershell -Command "& C:\\tools\\entrypoints\\iis\\Development.ps1" mem_limit: ${MEM_LIMIT_CM:-4GB} restart: unless-stopped labels: - "traefik.http.middlewares.redirect-to-https.redirectScheme.scheme=https" - "traefik.http.routers.cd.entrypoints=web" - "traefik.http.routers.cd.rule=Host(`${CD_HOST}`) || Host(`asm-${CD_HOST}`) " - "traefik.http.routers.cd.middlewares=redirect-to-https"
id: environment: SITECORE_LICENSE_LOCATION: C:\license\license.xml volumes: - ${LICENSE_PATH}:C:\license
xconnect: image: ${REGISTRY}${COMPOSE_PROJECT_NAME}-xp0-xconnect:${SITECORE_VERSION} build: context: ./build/xconnect args: BASE_IMAGE: ${SITECORE_DOCKER_REGISTRY}sitecore-xp0-xconnect:${SITECORE_VERSION} TOOLING_IMAGE: ${SITECORE_TOOLS_REGISTRY}sitecore-docker-tools-assets:${TOOLS_VERSION} environment: SITECORE_LICENSE_LOCATION: C:\license volumes: - .\data\xconnect:C:\deploy - ${LICENSE_PATH}:C:\license entrypoint: powershell -Command "& C:\\tools\\entrypoints\\iis\\Development.ps1"
xdbsearchworker: environment: SITECORE_LICENSE_LOCATION: C:\license volumes: - ${LICENSE_PATH}:C:\license
xdbautomationworker: environment: SITECORE_LICENSE_LOCATION: C:\license volumes: - ${LICENSE_PATH}:C:\license
cortexprocessingworker: environment: SITECORE_LICENSE_LOCATION: C:\license volumes: - ${LICENSE_PATH}:C:\licenseHere is a useful resource which provides a comprehensive list of Sitecore Docker image tags:
https://raw.githubusercontent.com/Sitecore/docker-images/master/tags/sitecore-tags.md
May the container gods have mercy on your soul.
-MG




