docker 容器挂载目录权限指定用户


  • docker创建容器的时候,通过挂载目录可以实现容器与宿主机共享文件,但是在多用户使用的情况会出现权限的问题.
  • 原因: dockers创建容器的时候默认的用户id 和 group id 都是默认的1000,容器内部的用户权限是和宿主机对应的,但是宿主机的其他用户的id 就不是1000了,这个时候权限就对应不起来了
  • 解决方法用户添加的时候加上相应的用户id 和 group id 就可以了
  • 例如可以在Dockerfile里加上如下步骤:
    RUN addgroup --gid ${gid} ${username} && \
        adduser --uid ${uid} --ingroup ${username} --disabled-password ${username}
    
  • 或者在启动脚本里面添加也是一样的
  • 最后进入容器可以使用docker exec -it -u ${uid}:${gid} ${container_id} /bin/bash 就能进入相应的用户


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM