Coder Social home page Coder Social logo

docker-images's Introduction

Repository of Sitecore Docker images

License: MIT Repositories Tags Deprecated Dockerfiles Default version

In this repository you will find the official Sitecore container support files. The /tags/ folder contains the official tags list of all published images (see SITECORE-TAGS.md).

Using this repository you can also build custom Docker images for the most recent versions of Sitecore. You can use this repository (preferably from a fork) from your build server and have it build and push images to your private Docker registry. See INSTRUCTIONS.md for how to setup and build, and IMAGES.md for a list of all custom images currently available to be built.

Information about this repository

  • Official statement on running Sitecore in containers, see https://kb.sitecore.net/articles/161310.
  • The images built from the build folder in this repo are not supported by Sitecore.
  • The build scripts and examples in this repository are provided and maintained by the community, with contributions and code reviews by Sitecore.
  • This repository was initially created to help consolidate efforts around Sitecore and Docker.
  • In scenarios where you or your organization require domains to be whitelisted, please see the following domains associated with the Sitecore Container Registry:
    • scr.sitecore.com
    • scr-data-westeurope.sitecore.com
    • scr-data-eastus.sitecore.com
    • scr-data-eastasia.sitecore.com

Official Sitecore image tags

Please see SITECORE-TAGS.md.

How to setup and build custom images

Please see INSTRUCTIONS.md.

List of custom images available to build

Please see IMAGES.md.

How to contribute

Please see CONTRIBUTING.md.

Repository changelog

Please see CHANGELOG.md.

docker-images's People

Contributors

a-e-benson avatar adoprog avatar anderslaub avatar barsonax avatar ben-m-s avatar bplasmeijer avatar hermanussen avatar ilchenkob avatar jballe avatar jeanfrancoislarente avatar jonasbang avatar joostmeijles avatar michaellwest avatar mikkelvalentinsorensen avatar navancommits avatar pbering avatar peter-nazarov-namics-com avatar peternazarov avatar phaniav avatar rahnemann avatar rdissertori avatar reyrahadian avatar robearlam avatar sc-devops-ci-github avatar sjeancoveo avatar sshushliapin avatar stuartcam avatar vitaliitylyk avatar vtml avatar wavveen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-images's Issues

XM&XP JSS docker images are missing the web.config changes which should be applied by the XDT files from the SCCPL of Azure's WDP

What is exactly missing?

  • In web.config JSS media handler is missing:
    <add verb="*" path="sitecorejss_media.ashx" type="Sitecore.JavaScriptServices.Media.MediaRequestHandler, Sitecore.JavaScriptServices.Media" name="Sitecore.JavaScriptServices.Media.MediaRequestHandler"/>

Why this is not an issue for SXA WDP?

  • SXA WDP already has .xdt files extracted from SCCPL into Sitecore Experience Accelerator XM 1.9.0 rev. 190528 for 9.2.scwdp.zip\Content\Website\App_Data\SxaXdt\.

Solution for JSS WDP:

  • Extract .xdt files from Sitecore JavaScript Services Server for Sitecore 9.2 XM 12.0.0 rev. 190522.scwdp.zip\Content\Website\App_Data\Transforms\JSSSCCPL.sccpl to \Website\App_Data\JssXdt\ so that the .xdt files can be picked-up by the transformation script.

Connecting to SQLDevin SSMS requires 'Trust server certificate' option

When you provision a new SQLDev
docker run --publish 44010:1433 --mount type=bind,source=d:/docker/sitecore_data/demo/sql,target=c:/data --name sql_xm_920 sitecore-xm-sqldev:9.2.0-windowsservercore-1903
You can't connect out of the box to SQL in SSMS. You have to navigate to the Connection Properties, check the "Trust server certificate" to allow the connection. Otherwise you get an error about "The certificate chain was issued by an authority that is not trusted"

Enable HTTPS for CM instances

I want to log in into CM instance using Sitecore Services Client (SSC) and Postman as described here. In order to do that HTTPS is required (otherwise SSC returns HTTPS is required error).

It would be great to open port 443 and access CM instance via https://localhost:44003.

CR for Azure Devops build-image.yml

I have the use-case that I only want to build Windows images using Azure Devops pipelines.

For this I propose to change the build-image.yml;

  • introduce some conditionals for jobs
  • add some variables for VM names, Azure subscription

In addition I would like to;

  • stop VMs after build
  • remove the assets drive mounting, caching locally seems okay and saves some complexity
  • perform a docker image prune after each build

We need to decide on the direction we want to go with these images

When I started the original repostory the idea was to provide a easy way for anyone to build and host their own Sitecore base Docker Images with a few goals for each image:

  1. Should be build using standard tooling (unzip for Sitecore 8.2.x and SIF for Sitecore 9.x)
  2. Should only do just enough to be able to run on its own
  3. Should be used as BASE images to build variants and projects on

The path we are currently on diverts from goal 2 and especially 3 and it started with #13. Not that it is bad at all but in my opinion it should have been implemented as a "variant" instead of in the base image. My current problem is that I can't use images from this repository anymore as I intended to do, for example I can't just do FROM registry.mycompany.com/sitecore:9.0.171219-xm1-cm and COPY in my project code, push and run in dev/test/prod whatever, without accepting multiple GB of Sitecore files on each Docker host spread in different volumes.

I would suggest that we use this issue to discuss what we want to do. For starters I suggest the we:

  1. Adopt above goals
  2. Restrucure this repository like so (where each folder is also the Docker repository name):
    /sitecore-base/
    /sitecore-variant/ or /sitecore-dev/ if it turns out it's only variants used for development
    /solrwin-dev/
    /sqlwin-dev/
  3. Do the PowerShell module for builds as discussed in issue #17 and support that we build only on folder (so our uses can choose which Docker repositories they want, or just call build multiple times to get it all)

Thoughts?

Question: Using the code in the 'develop' branch for Sitecore development

Hi,

The code on the develop branch seems to be working fine. And although I have not used it with our own solution, the demo from the docker-demo repo is working on my machine. But before we move on to our own solution, I see the develop branch has been sitting idle for a while, and was wondering if it's a good idea to base our Sitecore/Docker development efforts on this repo? The alternative is we build our own setup, but this takes time and I rather like the idea of using a central repo that is supported by the community.

Fyi: we're a small development team that is experimenting with docker, and would like to use a docker setup initially for local development only. Possibly moving onto other environments, when our local setup is stable.

Set-LicenseEnvironmentVariable.ps1 doesn't work properly

Steps to reproduce:

  1. Run Set-LicenseEnvironmentVariable.ps1 -Path C:\license\license.xml

Expected result: $env:SITECORE_LICENSE contains GZip>Base64 license.xml file
Actual result: $env:SITECORE_LICENSE always contains H4sIAAAAAAAEAA==

P.S. Doesn't matter file content, it as output I always get "H4sIAAAAAAAEAA=="

Updates Frequency?

With 9.0 Update 2 and 3 released, what is the plan for merging from develop to master on these items? Seems like this project needs a little attention from the Sitecore team as it is very beneficial to the community.

Error building Sitecore 9.1.0 XP base for ltsc2019

I during my attempts to build images for Sitecore 9.1.0, I receive the following error:

### Processing 'sitecore-xp-base:9.1.0-windowsservercore-ltsc2019'...
Sending build context to Docker daemon  308.5MB
Step 1/9 : ARG BUILD_IMAGE
Step 2/9 : ARG BASE_IMAGE
Step 3/9 : FROM $BUILD_IMAGE as builder
 ---> f2f1c7beb43c
Step 4/9 : SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
 ---> Using cache
 ---> ce514b2f8b91
Step 5/9 : COPY . /install/
 ---> Using cache
 ---> 3e32f653d520
Step 6/9 : RUN $env:SIF_CONFIG = 'createcert.json';     $env:INSTALL_TEMP = 'C:\\install';     Expand-Archive -Path (Join-Path $env:INSTALL_TEMP '*.zip') -DestinationPath $env:INSTALL_TEMP;     Expand-Archive -Path (Join-Path $env:INSTALL_TEMP '*Configuration files*.zip') -DestinationPath $env:INSTALL_TEMP;     Rename-Item -Path (Resolve-Path (Join-Path $env:INSTALL_TEMP $env:SIF_CONFIG)).Path -NewName 'config.json';
 ---> Using cache
 ---> cfa3b6ad1b14
Step 7/9 : FROM $BASE_IMAGE
 ---> 1b286d3d7168
Step 8/9 : COPY --from=builder ["/install/config.json", "/install/"]
failed to copy files: mkdir \\?: The filename, directory name, or volume label syntax is incorrect.
Failed: docker image build --isolation 'hyperv' --build-arg BUILD_IMAGE=mcr.microsoft.com/windows/servercore:ltsc2019 --build-arg BASE_IMAGE=sitecore-base:9.1.0-windowsservercore-ltsc2019
--tag 'sitecore-xp-base:9.1.0-windowsservercore-ltsc2019' 'C:\path\to\Sitecore\docker-images\repo\images\9.1.0 rev. 001564\windowsservercore\sitecore-xp-base'
At C:\path\to\Sitecore\docker-images\repo\modules\SitecoreImageBuilder\SitecoreImageBuilder.psm1:244 char:74
+ ... here-Object { $_ } | ForEach-Object { throw "Failed: $buildCommand" }
+                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (Failed: docker ...tecore-xp-base':String) [], RuntimeException
    + FullyQualifiedErrorId : Failed: docker image build --isolation 'hyperv' --build-arg BUILD_IMAGE=mcr.microsoft.com/windows/servercore:ltsc2019 --build-arg BASE_IMAGE=sitecore-base:9.
   1.0-windowsservercore-ltsc2019 --tag 'sitecore-xp-base:9.1.0-windowsservercore-ltsc2019' 'C:\path\to\Sitecore\docker-images\repo\images\9.1.0 rev. 001564\windowsservercore\sitecore-xp-bas
  e'

Everything looks to be correct and the file does exist in the builder image, but the next stage always fails.

Thanks in advanced.

Compose file docker-compose.xp.yml doesn't work

Steps to reproduce:

  1. cd .\windows\tests\9.3.x\
  2. docker-compose --file .\docker-compose.xp.yml up
  3. docker ps
  4. Find container id of 93x_cm_1. Get [CONTAINER_ID] from the output table.
  5. docker exec [CONTAINER_ID] ipconfig. Get [IP_ADDRESS] from the output table.
  6. Open http://[IP_ADDRESS]/sitecore in browser

Expected result:
Sitecore login screen is appeared.
Actual result:
The network path was not found exception in browser.
image

Multiple exceptions in logs.
image
image

I think that something wrong is with SQL configuration.
sql_93x_1 exited with code 1
Which causes absence of this container in list of running containers
image

XConnect automationengine fails to start when connected to VPN.

Team,
while trying to run a docker container on Friday, I ran into the below issue. I didn't run into this issue prior and I was using the same images from my previous build which ran successfully.

Upon further analysis of when this issue occurs, I noticed that I was on force tunnel VPN to my company when I tried to run the docker on my laptop.

Is this a known issue? I haven't found anything related to this error that is in either closed or open issues. So, bringing it to your notice. I haven't investigated how to resolve this yet. But if you are already aware of the problem, want to know if there is any workaround to this issue?

I have listed my machine configuration and VPN client details below the error stacktrace.

xconnect-automationengine_1  | 2019-11-15 23:18:57 ERR Error initializing XConnect client.
xconnect-automationengine_1  | System.AggregateException: One or more errors occurred. ---> Sitecore.XConnect.XdbCollectionUnavailableException: An error occurred while sending the request. ---> System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: The remote name could not be resolved: 'xconnect'
xconnect-automationengine_1  |    at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
xconnect-automationengine_1  |    at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
xconnect-automationengine_1  |    --- End of inner exception stack trace ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.Xdb.Common.Web.CommonWebApiClient`1.<ExecuteAsync>d__41.MoveNext()
xconnect-automationengine_1  | --- End of stack trace from previous location where exception was thrown ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.Xdb.Common.Web.CommonWebApiClient`1.<ExecuteGetAsync>d__36.MoveNext()
xconnect-automationengine_1  | --- End of stack trace from previous location where exception was thrown ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.WebApi.ConfigurationWebApiClient.<Refresh>d__6.MoveNext()
xconnect-automationengine_1  |    --- End of inner exception stack trace ---
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.WebApi.ConfigurationWebApiClient.<Refresh>d__6.MoveNext()
xconnect-automationengine_1  | --- End of stack trace from previous location where exception was thrown ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.XConnectClientConfiguration.<InitializeAsync>d__32.MoveNext()
xconnect-automationengine_1  |    --- End of inner exception stack trace ---
xconnect-automationengine_1  |    at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
xconnect-automationengine_1  |    at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.Configuration.XConnect.Extensions.ServiceCollectionExtensions.<>c__DisplayClass1_0.<UseXConnectClientConfiguration>b__0(IServiceProvider provider)
xconnect-automationengine_1  | ---> (Inner Exception #0) Sitecore.XConnect.XdbCollectionUnavailableException: An error occurred while sending the request. ---> System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: The remote name could not be resolved: 'xconnect'
xconnect-automationengine_1  |    at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
xconnect-automationengine_1  |    at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
xconnect-automationengine_1  |    --- End of inner exception stack trace ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.Xdb.Common.Web.CommonWebApiClient`1.<ExecuteAsync>d__41.MoveNext()
xconnect-automationengine_1  | --- End of stack trace from previous location where exception was thrown ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.Xdb.Common.Web.CommonWebApiClient`1.<ExecuteGetAsync>d__36.MoveNext()
xconnect-automationengine_1  | --- End of stack trace from previous location where exception was thrown ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.WebApi.ConfigurationWebApiClient.<Refresh>d__6.MoveNext()
xconnect-automationengine_1  |    --- End of inner exception stack trace ---
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.WebApi.ConfigurationWebApiClient.<Refresh>d__6.MoveNext()
xconnect-automationengine_1  | --- End of stack trace from previous location where exception was thrown ---
xconnect-automationengine_1  |    at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
xconnect-automationengine_1  |    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.XConnectClientConfiguration.<InitializeAsync>d__32.MoveNext()<---
xconnect-automationengine_1  | ERROR
xconnect-automationengine_1  | System.InvalidOperationException: This configuration has not been initialized. Please call the initialize method before using it.
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.XConnectClientConfiguration.CheckInitialized()
xconnect-automationengine_1  |    at Sitecore.XConnect.Client.XConnectClientC
xconnect-automationengine_1  |
xconnect-automationengine_1  | onfiguration.get_CurrentModel()
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.<RealizeService>b__0(ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.<RealizeService>b__0(ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.<RealizeService>b__0(ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
xconnect-automationengine_1  |    at Sitecore.XConnect.Configuration.Extensions.<>c__DisplayClass24_0.<UseServiceDecorator>b__1(IServiceProvider provider)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.<RealizeService>b__0(ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitTransient(TransientCallSite transientCallSite, ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitIEnumerable(IEnumerableCallSite enumerableCallSite, ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.<RealizeService>b__0(ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ActivatorUtilities.ConstructorMatcher.CreateInstance(IServiceProvider provider)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.<RealizeService>b__0(ServiceProviderEngineScope scope)
xconnect-automationengine_1  |    at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetService[T](IServiceProvider provider)
xconnect-automationengine_1  |    at Sitecore.Xdb.MarketingAutomation.Engine.App.ServiceConfiguration.get_Engine()
xconnect-automationengine_1  |    at Sitecore.Xdb.MarketingAutomation.Engine.App.Program.RunAsConsoleApp(Boolean interactive)
9xx_xconnect-automationengine_1 exited with code 0

My machine configuration
image

image

VPN client:
image

Thanks
Phani Abburi

Issue(or not?) sitecore-xp-pse-5.0-standalone:9.1.1-windowsservercore

When trying to build the sitecore-xp-pse-5.0-standalone:9.1.1-windowsservercore I'll get this error:

[WebDeploy]:[Path] C:\Program Files\iis\Microsoft Web Deploy V3\msdeploy.exe
�[91mError: Source does not support parameter called 'Application Path'. Must be one of ().
Error count: 1.
�[0m�[91mInstall-SitecoreConfiguration : Command C:\Program Files\iis\Microsoft Web
Deploy V3\msdeploy.exe returned a non-zero exit code - (-1)
At line:1 char:133

  • ... \\install'; Install-SitecoreConfiguration -Path (Join-Path $env:INSTA ...

Any ideas what it can be?

  • I have checked that the paths are correct and that I use double slashes ("\\")

Sql docker container exists everytime when running in the XP mode

Solr is not able to connect to the SQL docker container .The Processing enginer when trying to connect to the SQL it is not able to make the connection and gives the below error.

docker logs --details 8ff951b4c3d3

Existing Sitecore databases found in 'C:\data\'...

Attaching 'sc_Core'...

Attaching 'sc_Exm.master'...

Attaching 'sc_Experienceforms'...

Attaching 'sc_MarketingAutomationAzure'...

Attaching 'sc_Marketingautomation'...

Attaching 'sc_Master'...

Attaching 'sc_Messaging'...

Attaching 'sc_Processing.Engine.Storage'...

Attaching 'sc_Processing.Engine.Tasks'...

Attaching 'sc_Processing.pools'...

Attaching 'sc_Processing.tasks'...

Attaching 'sc_Referencedata'...

Attaching 'sc_Reporting'...

Attaching 'sc_Sessions'...

Attaching 'sc_Web'...

Attaching 'sc_Xdb.Collection.Shard0'...

Attaching 'sc_Xdb.Collection.Shard1'...

Attaching 'sc_Xdb.Collection.ShardMapManager'...

Preparing Sitecore databases...

Invoke-Sqlcmd : Invalid object name
'Sitecore.Xdb.Collection.ShardMapManager.__ShardManagement.ShardsGlobal'.
At C:\Boot.ps1:44 char:1

  • Invoke-Sqlcmd -Query ("UPDATE [Sitecore.Xdb.Collection.ShardMapManage ...
  •   + CategoryInfo          : InvalidOperation: (:) [Invoke-Sqlcmd], SqlPowerS
     hellSqlExecutionException
      + FullyQualifiedErrorId : SqlError,Microsoft.SqlServer.Management.PowerShe
     ll.GetScriptCommand
    

Test SHA1 hash of package to verify integrity of installers

While running into an issue related to the download of 7-zip, I realised that the download was only to verify that the zip file is not corrupt.

Would it be good to instead have SHA1 hashes for each of the Sitecore downloads, then test against that value instead? This would serve both the purpose of validating against corruption as well as ensure the expected packages are downloaded.

[Proposal] Addressing STDOUT for web/IIS containers

It would be nice when working with the containers to see the output of : 1) IIS Logs + 2) Sitecore logs when doing things like docker logs <containerid> or kubectl logs <podid> or when running docker-compose .. all of which take data from STDOUT.

We all know that ServiceMonitor does not output to STDOUT and Microsoft are being very slow at add this (its Issue #1 on their list!). Currently the options are to write our own ServiceMonitor replacement (Not a fan of C++ :P) or find some other solution.

My proposal is to use FileBeats from Elastic (The OSS / Apache licensed version) and build this into the image to provide STDOUT output.
https://www.elastic.co/downloads/beats/filebeat-oss

It is very small and flexible it can take a series of inputs (iis logs + sitecore logs) and has different outputs .. one of them is console (STDOUT).

Example config :

filebeat.modules:
- module: iis
  access:
    var.paths: ["C:/inetpub/logs/LogFiles/*/*.log"]
  error:
    var.paths: ["C:/Windows/System32/LogFiles/HTTPERR/*.log"]
output.console:
  codec.format:
    string: '%{[message]}'

https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-input-log.html

This would provide the STDOUT functionality we need plus, as a bonus, this would also allow people to very easily configure the container to ship their logs to things like logstatsh/kafka/redis and other places.

https://www.elastic.co/guide/en/beats/filebeat/current/configuring-output.html

The change would require a "boot script" of sorts to enable filebeat to 'own' the STDOUT :

Start-Job -Name ServiceMonitor {    
	C:\ServiceMonitor.exe W3SVC
	ps filebeat | kill -Force
}

C:\filebeat\filebeat.exe -c C:\filebeat\filebeat.yml

We know that ServiceMonitor checks the w3wp process and if it is stopped or it crashes then the process quits (and so stops the container). This tiny bootscript would still cover the same behaviour, if ServiceMonitor quits then filebeat is killed and the process will exit as planned.

Just an idea anyway .. interested to know what people think about this solution as i think we need to offer a proper STDOUT solution for people using the containers.

solr w/ xConnect

I've added my initial attempt at solr with xConnect by trying to follow @pbering original approach but copying some of the things from @Jonne & @joostmeijles

If someone could take this and make it work now that would be great. Hopefully I've got a lot of the stuff meshed together where it's just some minor cleanup & tweaking.

feature/solr-xp branch

Anti-forgery cookie in Forms

I am using sitecore-xm1-sxa-1.9.0-cm:9.2.0-windowsservercore and tried creating a test Form. I get errors that the anti-forgery cookie is not present. I seem to recall having similar issues with EXM.

Nuget Issue

Hi,
I got an error, when trying to run the build (see screenshot)
"Invoke-WebRequest : The remote name could not be resolved: 'dist.nuget.org''.
Ran the command in PS console, and it worked. Maybe there is an issue with the context?
SCDockerNugetIssue

Create a PowerShell module to replace Build.ps1 and its multiple features

We should modify the Find-SitecoreVersions function in Build.ps1 script to do just that, simply find the versions.

Would be another breaking change - but it's still early on in the adoption of the source.

Best approach is probably to remove Build.ps1, create a PSM1 file and follow PS best practices for creating Approved Verb Functions?

Thoughts are appreciated. @pbering ?

Missing JssImport user on JSS image variant

I'm using the JSS variant image from this repo with the docker image details below:

  • sitecore-xm1-jss-11.0.1-sqldev:9.1.1-windowsservercore-ltsc2019
  • sitecore-xm1-jss-11.0.1-cm:9.1.1-windowsservercore-ltsc2019

On startup I can see the home page just fine, however as soon as I start to try and to deploy the JSS app to Sitecore I started to get the following exception.

Exception thrown while importing JSS app
Exception: Sitecore.Exceptions.AccessDeniedException
   at Sitecore.JavaScriptServices.AppServices.ImportService.ImportJob.StartImportInternal()


Import is complete.

IMPORT ERROR(S) OCCURRED!
Exception thrown while importing JSS app
Exception: Sitecore.Exceptions.AccessDeniedException
Message: AddFromTemplate - Add access required (destination: {825B30B4-B40B-422E-9920-23A1B6BDA89C}, template: {0437FEE2-44C9-46A6-ABE9-28858D9FEE8C})
Source: Sitecore.Kernel
   at Sitecore.Diagnostics.Assert.HasAccess(Boolean accessAllowed, String message)
   at Sitecore.Data.Managers.ItemProvider.AddFromTemplate(String itemName, ID templateId, Item destination, ID newId)
   at Sitecore.Data.Managers.DefaultItemManager.AddFromTemplate(String itemName, ID templateId, Item destination, ID newItemId)
   at Sitecore.Data.Managers.ItemManager.AddFromTemplate(String itemName, ID templateId, Item destination, ID newItemId)
   at Sitecore.Data.Items.Item.Add(String name, TemplateID templateID, ID newItemID)
   at Sitecore.JavaScriptServices.AppServices.Data.ItemPathCreator.CreateItemPath(Database db, String path, TemplateItem folderTemplate, TemplateItem itemTemplate, String idNamespace, IdManager idManager, AppConfiguration app, ID targetItemId)
   at Sitecore.JavaScriptServices.AppServices.Data.ItemPathCreator.GetOrCreatePath(Database database, String path, TemplateItem folderTemplate, TemplateItem itemTemplate, String idNamespace, IdManager idManager, AppConfiguration app, Boolean& isNew)
   at Sitecore.JavaScriptServices.AppServices.Data.ItemPathCreator.GetOrCreatePath(Database database, String path, TemplateItem folderTemplate, TemplateItem itemTemplate, String idNamespace, IdManager idManager, AppConfiguration app)
   at Sitecore.JavaScriptServices.AppServices.Pipelines.Import.CreateTemplatesContainer.DoProcess(ImportPipelineArgs args, Database database, ItemPathCreator itemPathCreator)
   at (Object , Object )
   at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
   at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain, Boolean failIfNotExists)
   at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain)
   at Sitecore.JavaScriptServices.AppServices.Pipelines.Import.ImportPipeline.Import(ImportPipelineArgs args)
   at Sitecore.JavaScriptServices.AppServices.ImportService.ImportJob.StartImportInternal()

After fiddling around, I've noticed that the JSS Import user is missing and reinstalling the JSS zip package and rerunning the import seems to have to confirm the issue. This might be due to the fact that during docker build process, the JSS Import user from the package is not saved somewhere (either serialized to the file system or in a database)

I've looked at other Docker image repo from the community and it seems this repo solve the problem by approaching it differently.

Mount license.xml file as local volume

Would it be better to have users mount their license.xml file into the data directory using the -v or --volume flag when starting the docker image.

This would :

  1. Reduce the risk of people accidentally pushing an image into the public domain with their license file baked in
  2. Allow people to update their license file without rebuilding the whole docker image

Add ability to omit Registry when building images

Would be nice to be able to build images locally without a need for a Registry.

This would allow those that want to quickly work with the images locally to do so.

Would need to update module and README

[Build] Cleanup <none> intermediate containers after build is complete

After running Build.ps1 for the first time, lots of intermediate containers (<none>) are left behind ..

image

.. running a docker image prune -f when the build is complete would help tidy things up a bit! (12.32Gb on my local machine) or at least add the option to do this as a flag.

image

Error during attempt to build Sitecore 9.1.1 images

Step 9/9 : RUN $env:INSTALL_TEMP = 'C:\\install';     Start-Process msiexec.exe -ArgumentList '/i', (Join-Path $env:INSTALL_TEMP '\\webdeploy.msi'), '/quiet', '/norestart
' -NoNewWindow -Wait;     Start-Process msiexec.exe -ArgumentList '/i', (Join-Path $env:INSTALL_TEMP '\\urlrewrite.msi'), '/quiet', '/norestart' -NoNewWindow -Wait;     S
tart-Process (Join-Path $env:INSTALL_TEMP '\\VC_redist.x64.exe') -ArgumentList '/install', '/passive', '/norestart' -NoNewWindow -Wait;     Install-PackageProvider -Name 
NuGet -Force | Out-Null;     Register-PSRepository -Name SitecoreGallery -SourceLocation https://sitecore.myget.org/F/sc-powershell/api/v2;     Install-Module SitecoreIns
tallFramework -RequiredVersion 2.1.0 -Force;     Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters' -Name ServerPriorityTimeLimit -Value
 0 -Type DWord;     setx /M PATH $($env:PATH + ';C:\Sitecore\Scripts');     Remove-Website -Name 'Default Web Site';     Remove-Item -Path $env:INSTALL_TEMP -Force -Recur
se;
 ---> Running in 64948be8bc83
WARNING: MSG:UnableToDownload 
«https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409» «»
WARNING: Unable to download from URI 
'https://go.microsoft.com/fwlink/?LinkID=627338&clcid=0x409' to ''.
WARNING: Unable to download the list of available providers. Check your 
internet connection.
�[91mInstall-PackageProvider : No match was found for the specified search criteria 
�[0m�[91mfor the provider 'NuGet'. The package provider requires 'PackageManagement' 
and 'Provider' tags. Please check if the specified package has the tags.
At line:1 char:525
+ ... NoNewWindow -Wait; Install-PackageProvider -Name NuGet -Force | Out-N ...
+                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (Microsoft.Power...PackageProvi 
   der:InstallPackageProvider) [Install-PackageProvider], Exception
    + FullyQualifiedErrorId : NoMatchFoundForProvider,Microsoft.PowerShell.Pac 
   kageManagement.Cmdlets.InstallPackageProvider
 
docker : The command 'powershell -Command $ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue'; $env:INSTALL_TEMP = 'C:\\install';     
Start-Process msiexec.exe -ArgumentList '/i', (Join-Path $env:INSTALL_TEMP '\\webdeploy.msi'), '/quiet', '/norestart' -NoNewWindow -Wait;     Start-Process msiexec.exe 
-ArgumentList '/i', (Join-Path $env:INSTALL_TEMP '\\urlrewrite.msi'), '/quiet', '/norestart' -NoNewWindow -Wait;     Start-Process (Join-Path $env:INSTALL_TEMP 
'\\VC_redist.x64.exe') -ArgumentList '/install', '/passive', '/norestart' -NoNewWindow -Wait;     Install-PackageProvider -Name NuGet -Force | Out-Null;     
Register-PSRepository -Name SitecoreGallery -SourceLocation https://sitecore.myget.org/F/sc-powershell/api/v2;     Install-Module SitecoreInstallFramework 
-RequiredVersion 2.1.0 -Force;     Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters' -Name ServerPriorityTimeLimit -Value 0 -Type 
DWord;     setx /M PATH $($env:PATH + ';C:\Sitecore\Scripts');     Remove-Website -Name 'Default Web Site';     Remove-Item -Path $env:INSTALL_TEMP -Force -Recurse;' 
returned a non-zero code: 1
At line:1 char:1
+ docker image build --isolation 'hyperv' --tag 'sitecore-base:9.1.1-wi ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (The command 'po...on-zero code: 1:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

Prepare an image for development

Hi all,
I would like to prepare a development image that contains together all the requirements to run Sitecore XP Single.

Before reinvent the wheel I would like to listen to your advices.
How much difficult could be putting the minimum of services in the same image?

'Watch-Directory' breaks containers killing vital folders

I've got Watch-Directory configured to track changes in my published website folder (similar to this example). There might be folders that already exist in Sitecore (e.g. App_Config or App_Data). Removing these folders locally before publishing kills similar folders inside the container including all the other default Sitecore files. As a result Sitecore instance dies and container have to be recreated.

Should the script remove files only preserving the directories?

sitecore-xp-cd:9.2.0-windowsservercore-1903 Exception calling ".ctor" with "3" argument(s)

Getting this while trying to build sitecore-xp-cd:9.2.0-windowsservercore-1903

### Processing 'sitecore-xp-cd:9.2.0-windowsservercore-1903'...
Sending build context to Docker daemon  47.65MB
Step 1/11 : ARG BASE_IMAGE
Step 2/11 : FROM $BASE_IMAGE as builder
 ---> d66adb40a2ad
Step 3/11 : SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
 ---> Using cache
 ---> 0a98f6326f23
Step 4/11 : COPY . /install/
 ---> Using cache
 ---> 8da7318bce88
Step 5/11 : RUN $env:SIF_CONFIG = 'sitecore-xp1-cd.json';     $env:SIF_PACKAGE = 'Sitecore*_cd.scwdp.zip';     $env:SITENAME = 'sc';     $env:INSTALL_TEMP = 'C:\\install';     Expand-Archive -Path (Join-Path $env:INSTALL_TEMP '*.zip') -DestinationPath $env:INSTALL_TEMP;     Expand-Archive -Path (Join-Path $env:INSTALL_TEMP '*Configuration files*.zip') -DestinationPath $env:INSTALL_TEMP;     $config = Get-Content (Join-Path $env:INSTALL_TEMP $env:SIF_CONFIG)  | Where-Object { $_ -notmatch '^\s*\/\/'} | Out-String | ConvertFrom-Json;     $config.Variables.'Site.PhysicalPath' = 'C:\inetpub\{0}' -f $env:SITENAME;     ConvertTo-Json $config -Depth 50 | Set-Content -Path (Join-Path $env:INSTALL_TEMP $env:SIF_CONFIG);     Rename-Item -Path (Resolve-Path (Join-Path $env:INSTALL_TEMP $env:SIF_CONFIG)).Path -NewName 'config.json';     Rename-Item -Path (Resolve-Path (Join-Path $env:INSTALL_TEMP $env:SIF_PACKAGE)).Path -NewName 'package.zip';
 ---> Running in 368d48ddcffe
New-Object : Exception calling ".ctor" with "3" argument(s): "End of Central
Directory record could not be found."
At C:\Windows\system32\WindowsPowerShell\v1.0\Modules\Microsoft.PowerShell.Arch
ive\Microsoft.PowerShell.Archive.psm1:934 char:23
+ ... ipArchive = New-Object -TypeName System.IO.Compression.ZipArchive -Ar ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [New-Object], MethodInvoca
   tionException
    + FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.Power
   Shell.Commands.NewObjectCommand

The command 'powershell -Command $ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue'; $env:SIF_CONFIG = 'sitecore-xp1-cd.json';     $env:SIF_PACKAGE = 'Sitecore*_cd.scwdp.zip';     $env:SITENAME = 'sc';     $env:INSTALL_TEMP = 'C:\\install';     Expand-Archive -Path (Join-Path $env:INSTALL_TEMP '*.zip') -DestinationPath $env:INSTALL_TEMP;     Expand-Archive -Path (Join-Path $env:INSTALL_TEMP '*Configuration files*.zip') -DestinationPath $env:INSTALL_TEMP;     $config = Get-Content (Join-Path $env:INSTALL_TEMP $env:SIF_CONFIG)  | Where-Object { $_ -notmatch '^\s*\/\/'} | Out-String | ConvertFrom-Json;     $config.Variables.'Site.PhysicalPath' = 'C:\inetpub\{0}' -f $env:SITENAME;     ConvertTo-Json $config -Depth 50 | Set-Content -Path (Join-Path $env:INSTALL_TEMP $env:SIF_CONFIG);     Rename-Item -Path (Resolve-Path (Join-Path $env:INSTALL_TEMP $env:SIF_CONFIG)).Path -NewName 'config.json';     Rename-Item -Path (Resolve-Path (Join-Path $env:INSTALL_TEMP $env:SIF_PACKAGE)).Path -NewName 'package.zip';' returned a non-zero code: 1
Failed: docker image build --isolation 'hyperv' --build-arg BASE_IMAGE=sitecore-xp-base:9.2.0-windowsservercore-1903 --tag 'sitecore-xp-cd:9.2.0-windowsservercore-1903' 'C:\src\docker-images\images\9.2.0 rev. 002893\windowsservercore\sitecore-xp-cd'
At C:\src\docker-images\modules\SitecoreImageBuilder\SitecoreImageBuilder.psm1:244 char:74
+ ... here-Object { $_ } | ForEach-Object { throw "Failed: $buildCommand" }
+                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (Failed: docker ...sitecore-xp-cd':String) [], RuntimeException
    + FullyQualifiedErrorId : Failed: docker image build --isolation 'hyperv' --build-arg BASE_IMAGE=sitecore-xp-base:9.2.0-windowsservercore-1903 --tag 'sitecore-xp-cd:9.2.0-windowsservercore-1903' 'C:\src\docker-images\images\9.2.0 rev. 002893\windowsservercore\sitec
   ore-xp-cd'

Long download time for Solr-7.5.0, no progress shown and no caching

Building Sitecore 9.2.0 (all variants), and it is taking up to an hour to download solr version 7.5.0.

As this package is not seen as a prerequisite, it:

  • downloads directly into the container
  • needs to be re-downloaded if this step is stopped or higher steps are changed
  • does not check if this package has been downloaded already before initialing the download

Not sure if this is just an issue on my internet connection or if there is a viable solr download mirror? Ideally this would be one of the prerequisite packages downloaded and cached first (similar to SItecore packages) so this wait time isn't introduced needlessly and is only incurred once.

Thanks for all your great work on this repo!

SXA items missing in `sitecore-xm-sxa` images

I can see no SXA items in sitecore-xm-sxa/sitecore-xm-sxa-sqldev images. Am I missing smth or that's expected? Do I need to install package manually to get fully functioning SXA container up and running?

Not issue - suggestion. Adding a ps script for copying website files to data/cm or data/cd

Hey guys

I have a script where you can copy website files to your data folder.
Don't forget to change volume in docker-compose for the sitecore images :

volumes:
      - .\data\cm:C:\inetpub\sc 


function CopySitecoreFiles($sitecoreContainerName, $outputDir){
    
    $dockerId = docker ps -q --filter name=${sitecoreContainerName}

    docker stop $dockerId

    $dockerIdAndPath = "${dockerId}:/inetpub/sc"

    docker cp $dockerIdAndPath "${outputDir}"

    docker start $dockerId
	
	Write-Output "Sitecore files from container, " $sitecoreContainerName  ", have been copied to " $outputDir
}


CopySitecoreFiles "windowsservercore_cm_1" "tests/9.2.0 rev. 002893/windowsservercore/data/cm"

CopySitecoreFiles "windowsservercore_cd_1" "tests/9.2.0 rev. 002893/windowsservercore/data/cd"

Error when trying to find package

I'm getting the following error when running my build script.

Required package '\Sitecore 9.2.0 rev. 002893 (WDP XM1 packages).zip' was not defined in
'C:\Projects\docker-images\sitecore-packages.json' so it can't be downloaded, please add the package
'C:\Projects\docker-images\packages\Sitecore 9.2.0 rev. 002893 (WDP XM1 packages).zip' manually.
At C:\Projects\docker-images\modules\SitecoreImageBuilder\SitecoreImageBuilder.psm1:71 char:13
+             throw ("Required package '{0}' was not defined in '{1}' s ...
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (Required packag....zip' manually.:String) [], RuntimeException
    + FullyQualifiedErrorId : Required package '\Sitecore 9.2.0 rev. 002893 (WDP XM1 packages).zip' was not defined in
    'C:\Projects\docker-images\sitecore-packages.json' so it can't be downloaded, please add the package 'C:\Projects
  \docker-images\packages\Sitecore 9.2.0 rev. 002893 (WDP XM1 packages).zip' manually.

It looks like it may have been caused by this change c196793

It seems to be checking the sitecore-packages.json with a \ at the beginning.

If the trailing slash is being removed beforehand it won't exist to be removed in the path.

I fixed this by just changing the path string replace to $fileName = $filePath.Replace("$destinationPath\", "")

Update to support SPE 6.0

A few items I had in mind:

  • Rename from PSE to SPE
  • Download scripts should query the GitHub API for assets and download directly from GitHub

.vscode directory content should be ignored

When you work with the repository code in Visual Studio Code /.vscode/ directory content appears in the Git Commit files list. The /.vscode/ directory content should be ignored.

Unable to build MSSQL image on Win 1903 with 'hyperv' isolation

I've got a build agent running Windows Server Standard 1903 (10.0.18362.356). Trying to build 9.1.1 but fails on the following step:

### Processing 'mssql-developer:2017-windowsservercore-1903'...
Sending build context to Docker daemon  8.704kB

...

Step 6/12 : RUN [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;     Invoke-WebRequest -Uri 'https://go.microsoft.com/fwlink/?linkid=840945' -UseBasicParsing -OutFile 'SQL.exe';     Invoke-WebRequest -Uri 'https://go.microsoft.com/fwlink/?linkid=840944' -UseBasicParsing -OutFile 'SQL.box';     Start-Process -Wait -FilePath .\SQL.exe -ArgumentList /qs, /x:setup;     .\setup\setup.exe /q /ACTION=Install /INSTANCENAME=MSSQLSERVER /FEATURES=SQLEngine /UPDATEENABLED=0 /SQLSVCACCOUNT='NT AUTHORITY\System' /SQLSYSADMINACCOUNTS='BUILTIN\ADMINISTRATORS' /TCPENABLED=1 /NPENABLED=0 /IACCEPTSQLSERVERLICENSETERMS;     Stop-Service MSSQLSERVER;     Set-ItemProperty -Path 'HKLM:\software\microsoft\microsoft sql server\mssql14.MSSQLSERVER\mssqlserver\supersocketnetlib\tcp\ipall' -Name tcpdynamicports -Value '';     Set-ItemProperty -Path 'HKLM:\software\microsoft\microsoft sql server\mssql14.MSSQLSERVER\mssqlserver\supersocketnetlib\tcp\ipall' -Name tcpport -Value 1433;     Set-ItemProperty -Path 'HKLM:\software\microsoft\microsoft sql server\mssql14.MSSQLSERVER\mssqlserver' -Name LoginMode -Value 2;
 ---> Running in d24f4e88f0f2
hcsshim::CreateComputeSystem d24f4e88f0f20170d405931b6034d587e26bd5ab7ade5b5eba2a8e07f1b473f4: The request is not supported.
(extra info: {"SystemType":"Container","Name":"d24f4e88f0f20170d405931b6034d587e26bd5ab7ade5b5eba2a8e07f1b473f4","Owner":"docker","IgnoreFlushesDuringBoot":true,"LayerFolderPath":"C:\\ProgramData\\docker\\windowsfilter\\d24f4e88f0f20170d405931b6034d587e26bd5ab7ade5b5eba2a8e07f1b473f4","Layers":[{"ID":"d9c813a8-a170-54cf-a36d-d57ec89334a2","Path":"C:\\ProgramData\\docker\\windowsfilter\\d14f9514f6788b8f1fb54858a220ec375fe9d75d0ba0e0cf4a513dcb9a1ac1da"},{"ID":"6a0474b6-d2e2-552b-b721-bcb83358311b","Path":"C:\\ProgramData\\docker\\windowsfilter\\3024c4e92ef3245fa0a441ce87926a65ce89c6433d587866343bd9792fdb9a4d"},{"ID":"59c64ac9-eb21-5d86-8c23-e9d094d9f4d8","Path":"C:\\ProgramData\\docker\\windowsfilter\\8ccd2e981dfc8185cb36b52cad6219e384ec9c24c0d647fa9835733d3eea88e8"},{"ID":"19dc8d2d-1da8-5f1d-a6ec-396a78c1a185","Path":"C:\\ProgramData\\docker\\windowsfilter\\ec84bb6d557f668dd99ff7ea0edfe0715a272cc159a3d402a123b6fb5fd0ae9e"},{"ID":"47f0c9ed-90e4-599c-a4f7-66727e8469a2","Path":"C:\\ProgramData\\docker\\windowsfilter\\ccf9a0ad644a1126b2032351805017953ad906180eeb0f6b20fed8c4fc86d63f"}],"MemoryMaximumInMB":4096,"HostName":"d24f4e88f0f2","HvPartition":true,"EndpointList":["EC552011-4E65-411F-A36B-81E385E70E58"],"HvRuntime":{"ImagePath":"C:\\ProgramData\\docker\\windowsfilter\\ec84bb6d557f668dd99ff7ea0edfe0715a272cc159a3d402a123b6fb5fd0ae9e\\UtilityVM"},"AllowUnqualifiedDNSQuery":true})
Failed: docker image build --isolation 'hyperv' --memory 4GB --build-arg BASE_IMAGE=mcr.microsoft.com/windows/servercore:1903 --tag 'mssql-developer:201
7-windowsservercore-1903' 'C:\source\docker-images\images\mssql-developer-2017\windowsservercore'
At C:\source\docker-images\modules\SitecoreImageBuilder\SitecoreImageBuilder.psm1:244 char:74
+ ... here-Object { $_ } | ForEach-Object { throw "Failed: $buildCommand" }
+                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (Failed: docker ...dowsservercore':String) [], RuntimeException
    + FullyQualifiedErrorId : Failed: docker image build --isolation 'hyperv' --memory 4GB --build-arg BASE_IMAGE=mcr.microsoft.com/windows/servercore:
   1903 --tag 'mssql-developer:2017-windowsservercore-1903' 'C:\source\docker-images\images\mssql-developer-2017\windowsservercore'

It fails on this command:

docker image build --isolation 'hyperv' --memory 4GB --build-arg BASE_IMAGE=mcr.microsoft.com/windows/servercore:1903 --tag 'mssql-developer:2017-windowsservercore-1903' 'C:\source\docker-images\images\mssql-developer-2017\windowsservercore'

If I try to run it without the --isolation=hyperv parameter, the image is successfully created:

docker image build --memory 4GB --build-arg BASE_IMAGE=mcr.microsoft.com/windows/servercore:1903 --tag 'mssql-developer:2017-windowsservercore-1903' 'C:\source\docker-images\images\mssql-developer-2017\windowsservercore'

...

Successfully built bdef68dafff2
Successfully tagged mssql-developer:2017-windowsservercore-1903

Delete Sitecore packages after build

In order to save space locally, the build process should delete the packages zip that is copied into each /Sitecore subfolder after each build.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.