docker - 如何在 WSL + Docker + VS Code 设置中防止用户冲突
问题描述
我有 WSL + Docker + VS Code 设置。我正在处理的文件位于 WSL 文件系统中并安装到 Docker 容器中。
要在 Docker 容器中运行文件,它需要用户www-data
,但我无法保存文件并在我的 VS Code 中执行 git 操作,因为它们在我的 WSL 文件系统中,它需要我的 WSL 本地用户来保存文件/运行 git 操作.
所以我必须sudo chown
来回确保我可以在 Docker 容器中运行文件并将文件保存在我的 WSL 文件系统中/执行 git 操作。
有没有办法让文件在 WSL 和 Docker 容器中工作而不必sudo chown
来回?
解决方案
我通过以下答案找到了解决方案:https ://stackoverflow.com/a/56904335/2927317 。
user: USERID:GROUPID
我们需要通过在 docker compose 文件中添加定义来设置 docker 服务的用户和组 ID 以匹配主机中的用户和组 ID 。
推荐阅读
- java - 使用 Jackson 序列化 yml 文件的数据对象
- java - 无法从抽象类调用非静态方法
- javascript - ES6 - 可以从对象解构到另一个对象属性吗?
- python-3.x - Anaconda 安全错误:跳过 sha256 不匹配并继续
- ios - 当行数动态增加/减少时查找 UILabel 的高度
- mysql - 如何计算mysql中的平均行创建时间?
- javascript - 如何使用Java脚本从用户在asp.net中输入的天数中获取两个日期之间的差异
- sql-server - SQL Server - 按可变数量的参数过滤查询
- r - 按列的值对行进行分组并计算 R 中的中位数
- nlp - 使用 opennlp.en 澄清分块中标签的含义 - “O”标签是什么意思?