PowerShell / PowerShell/PowerShell-Docker

PowerShell 7.4-debian-11 image triggers an internal CLR error when executing a PowerShell command when run via Docker Desktop on Apple Silicon

Open
#799 5 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Dockerfile
Stars
449
Forks
158
Avg merge
3d 10h
Merged PRs (30d)
1

Description

Prerequisites
  • Write a descriptive title.
  • Make sure you are able to repro it on the latest image.
  • Search the existing issues.
  • Verified that this is not a Known Issue
  • Verified this is not an issues in the underlying windows container that should be reported to Windows Feedback Hub
Steps to reproduce
  • Use a Mac with Apple Silicon
  • Use macOS Sonoma 14.2.1 (23C71)
  • Use Docker Desktop 4.28.0 (139021)
  • Run the following commands in a terminal (% is the zsh prompt, PS /> is the prompt inside the container):
% docker run -it --name "ps74" --platform "linux/amd64" --rm "mcr.microsoft.com/powershell:7.4-debian-11"
PS /> Write-Warning Test
Expected behavior
WARNING: Test
Actual behavior
An error has occurred that was not properly handled. Additional information is shown below. The PowerShell process will exit.
Error details
Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object.
   at Regex1_Scan(RegexRunner, ReadOnlySpan`1)
Fatal error. Internal CLR error. (0x80131506)
   at DynamicClass.Regex1_Scan(System.Text.RegularExpressions.RegexRunner, System.ReadOnlySpan`1<Char>)
Environment data
{
        "schemaVersion": 2,
        "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
        "config": {
                "mediaType": "application/vnd.docker.container.image.v1+json",
                "size": 3699,
                "digest": "sha256:b04037c30904d6cf7f4691d77f7c908e203abb2cea5c70abad51799c8ca07c11"
        },
        "layers": [
                {
                        "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
                        "size": 31422489,
                        "digest": "sha256:c0edef2937fa3b888b0cc3f9f5a4db00a1be6f297be5f057a77d738f91e675a0"
                },
                {
                        "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
                        "size": 72981391,
                        "digest": "sha256:47d8a5670baa302610b81b696367412a0ea2c33e27a73b0be67b4c511c45900d"
                },
                {
                        "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
                        "size": 23842684,
                        "digest": "sha256:742248d80c879b816bfbc9481c14e1b078ed5dacea8f26453d3245d313f8bfde"
                },
                {
                        "mediaType": "application/vnd.docker.image.rootfs.diff.tar.gzip",
                        "size": 20896,
                        "digest": "sha256:ce8b82fb86b67eddc909e803fb07a192dbdce2ecf0098dc105be732e12d18628"
                }
        ]
}
Visuals
Screenshot 2024-03-29 at 23 25 22

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the documented docker run command on Apple Silicon with Docker Desktop, then inspect the PowerShell 7.4 Debian 11 image and its runtime configuration around the reported Regex1_Scan and internal CLR error. Done means Write-Warning Test produces the expected warning without terminating the PowerShell process.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, dockerfile, powershell
Domain
devops, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.