繁体   English   中英

Docker-Compose挂载文件不属于root

[英]Docker-Compose mounted files are not owned by root

我正在将笔记本电脑/主机的工作目录中的文件装载到容器中,但不确定为什么装载的文件归www-data q是在主机上创建的,因此按预期由root拥有。

内部容器:

在此处输入图片说明

其他一些观察:

主机UID(我的OS X帐户):1783256022(不确定为什么会这样)

容器UID(www-data):33

Dockerfile:

FROM nginx:1.13.8

RUN apt-get update
RUN apt-get install -y nano && \
    apt-get install -y git && \
    apt-get install -y procps && \
    apt-get install net-tools

RUN mkdir -p /var/www/html
WORKDIR /var/www/html

泊坞窗,compose.yml:

version: '3'
services:

  web:
    build:
      context: ./docker/nginx
    image: tc-web:0.1.0
    container_name: tc-web
    volumes:
      - ./:/var/www/html/
      - ./docker/nginx/.bashrc:/root/.bashrc
      - ./docker/nginx/nginx.conf:/etc/nginx/nginx.conf
      - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
    ports:
      - 8080:80

当您在类似Unix的系统中使用卷安装目录时,文件将保持与主机在uid gid方面相同的权限。 这意味着在您的主机(可能是您的用户)中创建文件的uid具有与容器内www-data用户相同的用户ID。

当您从容器内部创建文件时,由于容器是以root用户身份运行的,因此文件将由root用户拥有(容器内部和外部)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM