Reputation: 820
Docker desktop is using Linux containers.
(Yes, I tried this: Docker Error: failed to register layer: Error processing tar file(exit status 1): "...msader15.dll.mui: no such file or directory", but using Docker Desktop with Windows containers caused the docker-compose command to fail with the response Error response from daemon: operating system is not supported
)
- engine-load-tests
|- Dockerfile
|- docker-compose.yml
|- engine_load_tester_locust\
|- main.py
|- WinPerfCounters\ [I know - the casing is inconsistent]
|- main.py
|- Dockerfile
|- environment config files, README, other files
FROM python:3.9.6-windowsservercore-1809
COPY . ./WinPerfCounters/
RUN pip install --no-cache-dir -r ./WinPerfCounters/requirements.txt
CMD [ "python", "WinPerfCounters/main.py", "WinPerfCounters/load_test.conf" ]
version: "3.3"
services:
win_perf_counters:
container_name: win_perf_counters
platform: windows
image: python:3.9.6-windowsservercore-1809
build: ./WinPerfCounters
depends_on:
- influxdb
links:
- influxdb
Then other containers for locust, influx, and grafana...
------
> [python:3.9.6-windowsservercore-1809 1/3] FROM docker.io/library/python:3.9.6-windowsservercore-1809@sha256:54b7eadfbbc3a983bf6ea80eb7478b68d46267bbbcc710569972c140247ccd5e:
-----
failed to solve: rpc error: code = Unknown desc = failed to register layer: Error processing tar file(exit status 1): link /Files/Program Files/common files/Microsoft Shared/Ink/en-US/micaut.dll.mui /Files/Program Files (x86)/common fi
les/Microsoft Shared/ink/en-US/micaut.dll.mui: no such file or directory
Upvotes: 2
Views: 2063
Reputation: 11
I ran into this exact same issue and here are the first things I tried that didn't work:
I also saw a comment that it's necessary to upgrade to Docker Pro, and that is not true.
The following are also necessary but aren't what 'fixed' it for me:
<PropertyGroup> <DockerDefaultTargetOS>Windows</DockerDefaultTargetOS> <EnableSdkContainerDebugging> True </EnableSdkContainerDebugging> </PropertyGroup>
The missing piece to my puzzle was configuring Docker Desktop to Windows, which is done in the taskbar at the bottom of the screen, to the left of the clock, sound, and network configuration. Click the ^ arrow, then right click the small Docker symbol. You can see that mine now says 'switch to linux containers' because it is currently set to windows.
Upvotes: 0
Reputation: 235
You need to run Docker in the windows container. Right-click on the Docker icon in the system tray and select "Switch to Windows containers" from the context menu.
Upvotes: 0
Reputation: 2346
You can't run Windows containers (i.e. derived from some Windows base image like windowsservercore-1809) when Docker Desktop is set to Linux containers.
Upvotes: 3