Macにrancher desktopをインストールしてコンテナを使っています。

下記のようにカレントディレクトリをマウントしてすると、マウントされたディレクトリは、ホストOSのuid/gidのままです。

```

    $ docker run -it --rm -v $(pwd):/mnt/cwd -u vscode --workdir /mnt/cwd mcr.microsoft.com/devcontainers/python:3.10-bullseye bash
    vscode ➜ /mnt/cwd $ id
    uid=1000(vscode) gid=1000(vscode) groups=1000(vscode),998(nvm),999(pipx)
    vscode ➜ /mnt/cwd $ ls -l
    total 0
    -rw-r--r-- 1 501 dialout 0 Nov  9 02:37 aaa
    vscode ➜ /mnt/cwd $ 
    
```

このディレクトリにファイルを作成するとコンテナのuid/gidでファイルが作成されると思ったのですが、実際にはホストOSのuid/gidで作成されます。

```

    vscode ➜ /mnt/cwd $ touch bbb
    vscode ➜ /mnt/cwd $ ls -l
    total 0
    -rw-r--r-- 1 501 dialout 0 Nov  9 02:37 aaa
    -rw-r--r-- 1 501 dialout 0 Nov  9 02:41 bbb
    vscode ➜ /mnt/cwd $ id
    uid=1000(vscode) gid=1000(vscode) groups=1000(vscode),998(nvm),999(pipx)
    vscode ➜ /mnt/cwd $ 
    
```

問題ないように見えますが、下記のようにパーミッションエラーになるケースがあります。

```

    vscode ➜ /mnt/cwd $ npx create-next-app@latest --typescript
    ...
    Aborting installation.
    Unexpected error. Please report it as a bug:
     NestedError: Cannot copy from `/home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/templates/default/ts/pages/index.tsx` to `/mnt/cwd/my-app/pages/index.tsx`: chown `/mnt/cwd/my-app/pages/index.tsx` failed: EACCES: permission denied, chown '/mnt/cwd/my-app/pages/index.tsx'
        at /home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:38:7282
        at async Promise.all (index 9)
        at async installTemplate (/home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:317:16131)
        at async createApp (/home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:317:19090)
        at async run (/home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:317:24644)
    Caused By: NestedError: chown `/mnt/cwd/my-app/pages/index.tsx` failed: EACCES: permission denied, chown '/mnt/cwd/my-app/pages/index.tsx'
        at /home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:38:1617
        at async Promise.all (index 2)
        at async Promise.all (index 9)
        at async installTemplate (/home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:317:16131)
        at async createApp (/home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:317:19090)
        at async run (/home/vscode/.npm/_npx/cc2145a2fe1558fa/node_modules/create-next-app/dist/index.js:317:24644)
    Caused By: Error: EACCES: permission denied, chown '/mnt/cwd/my-app/pages/index.tsx' {
      nested: [Error: EACCES: permission denied, chown '/mnt/cwd/my-app/pages/index.tsx'] {
        errno: -13,
        code: 'EACCES',
        syscall: 'chown',
        path: '/mnt/cwd/my-app/pages/index.tsx'
      },
      errno: -13,
      code: 'EACCES',
      syscall: 'chown',
      path: '/mnt/cwd/my-app/pages/index.tsx',
      name: 'CpyError'
    }
    
    vscode ➜ /mnt/cwd $ 
    
```

環境は下記の通りです。

項目 | バージョン  
---|---  
ハード | MacBook Pro（13インチ、M2、2022）  
OS | MacOS 12.6  
Rancher Desktop | 1.5.1
CC BY-SA 4.0
2022-11-09T03:02:19.290
92097
2022-11-09T04:20:42.390
2022-11-09T04:20:42.390
5285
5285
question
node.js docker-for-mac
Macのrancher desktopで、コンテナのUIDとマウントしたボリュームに書き込んだファイルのUIDがことなる。