I am trying to run docker on my mac. https://docs.aspnetzero.com/aspnet-core-angular/latest/Deployment-Angular-Docker I read this document.
- I locate my terminal to this folder /Users/hsudas/Documents/GitHub/AnalisionFrontendV2/aspnet-core/build and run this command pwsh build-with-ng.ps1 (I installed powershell to Mac computer )
- Then locate to /Users/hsudas/Documents/GitHub/AnalisionFrontendV2/aspnet-core/build/outputs/Host and run this command docker compose -f docker-compose.yml -f docker-compose.override.yml up Finally got his error.
WARN[0000] /Users/hsudas/Documents/GitHub/AnalisionFrontendV2/aspnet-core/build/outputs/Host/docker-compose.yml: the attribute version is obsolete, it will be ignored, please remove it to avoid potential confusion
WARN[0000] The "APPDATA" variable is not set. Defaulting to a blank string.
WARN[0000] The "APPDATA" variable is not set. Defaulting to a blank string.
WARN[0000] /Users/hsudas/Documents/GitHub/AnalisionFrontendV2/aspnet-core/build/outputs/Host/docker-compose.override.yml: the attribute version is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 1/1
! mycompanyname.abpzerotemplate.web.host Warning pull access denied for mycompanyname.abpzerotemplate.web.host, repository does not exist or may... 0.7s
[+] Building 1.0s (9/9) FINISHED docker:desktop-linux
=> [mycompanyname.abpzerotemplate.web.host internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 287B 0.0s
=> [mycompanyname.abpzerotemplate.web.host internal] load metadata for mcr.microsoft.com/dotnet/aspnet:7.0 0.1s
=> [mycompanyname.abpzerotemplate.web.host internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [mycompanyname.abpzerotemplate.web.host 1/3] FROM mcr.microsoft.com/dotnet/aspnet:7.0@sha256:c7d9ee6cd01afe9aa80642e577c7cec9f5d87f88e5d70bd36fd61072079bc55b 0.0s
=> => resolve mcr.microsoft.com/dotnet/aspnet:7.0@sha256:c7d9ee6cd01afe9aa80642e577c7cec9f5d87f88e5d70bd36fd61072079bc55b 0.0s
=> [mycompanyname.abpzerotemplate.web.host internal] load build context 0.0s
=> => transferring context: 40.41kB 0.0s
=> CACHED [mycompanyname.abpzerotemplate.web.host 2/3] WORKDIR /app 0.0s
=> CACHED [mycompanyname.abpzerotemplate.web.host 3/3] COPY . . 0.0s
=> [mycompanyname.abpzerotemplate.web.host] exporting to image 0.7s
=> => exporting layers 0.0s
=> => exporting manifest sha256:789b3df905315820d5a6104b1c9f1fd1287fbd61bfd2fd9ee8eea58ab67b7608 0.0s
=> => exporting config sha256:1a7d4fda8ba8a8466a1f1685b29db7ea0070add00ceaa4987f1b3f4d469ed18e 0.0s
=> => exporting attestation manifest sha256:d2f1bf7e9c46db825d151223739a2eac411f96213279c246636c20eb4a7e1658 0.0s
=> => exporting manifest list sha256:4aeac00514bd37457af84689603ee278b3747099e9804f45eaea3bc860c2ce02 0.0s
=> => naming to docker.io/library/mycompanyname.abpzerotemplate.web.host:latest 0.0s
=> => unpacking to docker.io/library/mycompanyname.abpzerotemplate.web.host:latest 0.7s
=> [mycompanyname.abpzerotemplate.web.host] resolving provenance for metadata file 0.0s
[+] Running 2/2
✔ Network host_default Created 0.0s
✔ Container mycompanyname.abpzerotemplate.web.host_container Created 0.2s
Attaching to mycompanyname.abpzerotemplate.web.host_container
Gracefully stopping... (press Ctrl+C again to force)
Error response from daemon: Mounts denied:
The path /Microsoft/UserSecrets is not shared from the host and is not known to Docker.
You can configure shared paths from Docker -> Preferences... -> Resources -> File Sharing.
See https://docs.docker.com/desktop/settings/mac/#file-sharing for more info.
4 Answer(s)
-
0
Hi FahrettinOzturk
The error you're encountering happens because Docker is trying to access certain directories on your Mac's file system, specifically /Microsoft/UserSecrets, but it doesn't have permission. To resolve this, you need to share that directory with Docker.
Steps to Fix:
Open Docker Preferences:
- Click on the Docker icon in the top-right menu bar of your Mac and select "Preferences."
Go to File Sharing Settings:
- In the Preferences window, navigate to the Resources section on the left, and then click on File Sharing.
Add the Directory:
- In the File Sharing tab, you'll see a list of directories that Docker is allowed to access.
- Click the + button, and add the /Microsoft/UserSecrets directory.
- After adding it, click "Apply & Restart" to save the changes.
Restart Docker:
- Docker will restart automatically after applying the changes.
Run Your Commands Again:
- Once Docker restarts, try running your command again:
docker compose -f docker-compose.yml -f docker-compose.override.yml upThese steps should allow Docker to access the necessary directory, and the error should be resolved.
If the issue persists, don’t hesitate to reach out for further assistance.
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image) -
0
I already applied these instructions since Chat GPT gave exactly same. But the problem is I don't have UserSecrets folder in my mac.
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image) -
0
Hi @FahrettinOzturk,
Could you try to create user secrets with the following document?
dotnet user-secrets inithttps://learn.microsoft.com/en-us/aspnet/core/security/app-secrets?view=aspnetcore-8.0&tabs=linux
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image) -
0
Nope Not worked. Since I am using mac I have changed ${APPDATA} to ~ - ${APPDATA}/Microsoft/UserSecrets:/root/.microsoft/usersecrets:ro - ${APPDATA}/ASP.NET/Https:/root/.aspnet/https:ro
And then in YML files changed FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base to FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base now worked
Markdown is supportedCopy & paste or drag & drop images (max 30 MB per image)