Leo*_*Leo 2 linux windows git permissions docker
公司的PC是Win10,不能带自己的LP,我想在Linux上开发,所以我准备在Windows上安装一个docker并在上面运行一个Linux容器,我进行我的开发。
--- 背景---
我Docker Desktop for Windows在 Win10 中安装了(19.03.8) 并拉取了一个 Ubuntu 映像。
我启动 Ubuntu 容器-v以将我的 win10 安装host_dir到容器的slave_dir.
在host_dir之前安装已是一个git回购与.git目录host_dir。
通过 ssh with root user,我slave_dir在容器中编辑文件,当我想提交更改时,出现以下错误:
root@5f8d7d02ee70:~/slave_dir# git status
fatal: failed to read object 36fa53e7ecb9d1daa454fc82f7bd7310afa335b7: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
我猜AuthorityWin10 和我的 Linux 容器之间的 git有问题
而且我有一个类似的情况,在该博主说,你应该运行与--user泊坞窗,并且在--user与你登录的主机上的PARAM应该是相同的
所以我尝试如下:
docker run -it --name test --user Leo -p 127.0.0.1:5001 -v host_dir:slave_dir image_name /bin/bash
Run Code Online (Sandbox Code Playgroud)
不幸的是,slave_dir 的uid和gid仍然是root.
在 Win10 上使用 cygwin,我id用来查找我的登录用户的 uid 和 gid,
然后重试直接使用 uid/gid 运行 docker。
docker run -it --name test --user 4344296:1049089 -p 127.0.0.1:5001 -v host_dir:slave_dir image_name /bin/bash
Run Code Online (Sandbox Code Playgroud)
OMG,还是不行!还是root!……
不知是我操作有误还是window的Docker-Desktop-For-Windows挂载时有一些用Authority的技巧。
谢谢大家!
| 归档时间: |
|
| 查看次数: |
517 次 |
| 最近记录: |