Docker用户身份登录和管理员权限

本文讨论了为何要在Docker容器中以非root用户启动,详细介绍了如何通过参数设置实现,并提供了修改Dockerfile以允许在容器内通过sudo获取管理员权限的方法。此外,还分享了如何在容器中映射宿主机的用户组和密码,以便在容器内以管理员权限启动服务如SSH。
摘要由CSDN通过智能技术生成

更多docker的相关命令请戳我的个人网站:https://www.yolomax.com/lab/skills/docker/

以非root用户启动容器

  • 为什么要用非root用户启动容器

    默认情况下,容器中的进程以 root 用户权限运行,并且这个 root 用户和宿主机中的 root 是同一个用户。所以大家直接启动容器,并在容器内部跑程序时,你在宿主机上用top等命令查看进程时,以及用nvidia-smi查看显卡使用时,显示的都是root用户在运行。

    这样会带来几个问题。1. 你在容器中保存的文件的拥有者并不是你,而是root用户,当你的容器被销毁后,你在宿主机上是没有权限对这些文件进行操作的。2. 对于其他用户来说,他人无法通过nvidia-smi查看显卡是谁在使用,因为通过进程ID查到的是root用户在跑程序。这不方便同事之间进行显卡利用的沟通,也不方便管理员监管。当部分进程有问题时,管理员不知道找谁。

  • 怎么以非root用户启动容器。

    docker run --user $(id -u ${
          USER}</
  • 8
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值