首页 > 解决方案 > 开发容器:绑定用户?

问题描述

我有一个非常基本的 Dockerfile:

FROM ubuntu:20.04

ARG USER=latex
ARG UID=1000
ARG GID=1000
ARG PW=latex

RUN useradd -m ${USER} --uid=${UID} && echo "${USER}:${PW}" | \
    chpasswd
USER ${UID}:${GID}
WORKDIR /home/${USER}

如果我构建它,我会注意到工作目录属于latex

$ test docker build .devcontainer/Dockerfile
$ docker run -it badbeef $(pwd -P):/home/latex /bin/bash
latex@badbeef:~$ ls -al
drwxr-xr-x 2 latex latex 4096 Jun 29 18:52 .
drwxr-xr-x 1 root  root  4096 Jun 29 18:52 ..
drwxrwxrwx 1 latex latex 512  Jun 29 18:51 .devcontainer

现在我尝试将它打开到一个 Dev Container 到 VsCode 中。这里我的devcontainer.json

{
    "name": "merci-la-vie",
    "dockerFile": "Dockerfile",
    "remoteUser": "latex"
}

从控制台选项卡我得到这个:

$ whoami
latex
$ ls -al
total 4
drwxrwxrwx 1 root root  512 Jun 29 18:28 .
drwxr-xr-x 3 root root 4096 Jun 29 18:58 ..
drwxrwxrwx 1 root root  512 Jun 29 18:51 .devcontainer

为什么当前文件夹归latex所有?

标签: dockerpermissions

解决方案


推荐阅读