You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Ubuntu Server非root用户免密码执行docker exec命令

允许特定非root用户免密执行指定Docker容器的exec命令

操作步骤:

  1. 编辑sudoers配置文件
    使用visudo工具编辑(避免直接修改/etc/sudoers导致语法错误):
    sudo visudo
    
  2. 添加免密命令规则
    在文件末尾添加一行,替换devuser为你的目标用户名,dev-container为指定容器名:
    devuser ALL=(ALL) NOPASSWD: /usr/bin/docker exec -it dev-container /bin/bash
    
    注意:先通过which docker确认docker的实际路径,确保路径与规则中一致。
  3. 测试配置
    切换到目标用户,执行命令验证:
    su - devuser
    sudo docker exec -it dev-container /bin/bash
    
    此时无需输入密码即可进入指定容器。

注意事项:

  • 不建议将用户加入docker组:该组用户拥有完整Docker权限,存在安全风险,而sudoers规则可以实现更精细的权限控制。
  • 若需允许多个容器或命令,可在NOPASSWD:后用逗号分隔不同命令,或添加多行规则。
  • 确保命令完全匹配:规则中的命令参数要精确,防止用户通过修改参数执行未授权操作。

内容的提问来源于stack exchange,提问作者Damiano

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 08:35:18