43T*_*cts 7 dockerfile visual-studio-code vscode-remote
我正在尝试使用Visual Studio Code 的远程容器扩展,但是当我“打开容器中的文件夹”时,出现以下错误:
\n\nRun: docker exec 0d0c1eac6f38b81566757786f853d6f6a4f3a836c15ca7ed3a3aaf29b9faab14 /bin/sh -c set -o noclobber ; mkdir -p \'/home/appuser/.vscode-server/data/Machine\' && { > \'/home/appuser/.vscode-server/data/Machine/.writeMachineSettingsMarker\' ; } 2> /dev/null\nmkdir: cannot create directory \xe2\x80\x98/home/appuser\xe2\x80\x99: Permission denied\nRun Code Online (Sandbox Code Playgroud)\n\n我的 Dockerfile 使用:
\n\nFROM python:3.7-slim\n...\nRUN useradd -ms /bin/bash appuser\nUSER appuser\nRun Code Online (Sandbox Code Playgroud)\n\n我也尝试过:
\n\nRUN adduser -D appuser\nRUN groupadd -g 999 appuser && \\\n useradd -r -u 999 -g appuser appuser\nUSER appuser\nRun Code Online (Sandbox Code Playgroud)\n\n如果我直接构建它们,这两个都可以工作。我该如何让它发挥作用?
\n小智 0
进入您的 WSL2 并使用命令 id 检查您的本地 uid(非 root)是什么。就我而言,它是 UID=1000(ubuntu)。将您的 dockerfile 更改为如下所示:
# For more information, please refer to https://aka.ms/vscode-docker-python
FROM python:3.8-slim-buster
# Keeps Python from generating .pyc files in the container
ENV PYTHONDONTWRITEBYTECODE=1
# Turns off buffering for easier container logging
ENV PYTHONUNBUFFERED=1
# Install pip requirements
COPY requirements.txt .
RUN python -m pip install -r requirements.txt
WORKDIR /home/ubuntu
COPY . /home/ubuntu
# Creates a non-root user and adds permission to access the /app folder
# For more info, please refer to https://aka.ms/vscode-docker-python-configure-containers
RUN useradd -u 1000 ubuntu && chown -R ubuntu /home/ubuntu
USER ubuntu
# During debugging, this entry point will be overridden. For more information, please refer to https://aka.ms/vscode-docker-python-debug
CMD ["python", "app.py"]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6568 次 |
| 最近记录: |