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

如何使用docker-compose启动带有privileged权限的容器?

docker compose 配置privileged不生效解决办法
  • 第一步:确认yml配置层级正确
    privileged参数必须和服务的image、container_name等配置平级,缩进错误、放错配置块都会导致配置不生效,正确写法参考:
version: '3'
services:
  your_service:
    image: your_image
    container_name: your_container
    privileged: true # 此处和上面的image、container_name缩进保持一致
    # 其他端口、挂载卷等配置正常写即可
  • 第二步:强制重建容器加载新配置
    修改完yml直接执行docker-compose up不会更新已经存在的旧容器,默认会复用旧容器的启动参数,不会读取新的yml配置,需要先清理旧容器再启动:
# 停止并删除当前docker-compose管理的旧容器,不会删除本地镜像和挂载的持久化数据
sudo docker-compose down
# 重新启动容器
sudo docker-compose up -d

也可以直接用强制重建参数启动,跳过down的步骤:

sudo docker-compose up -d --force-recreate
  • 第三步:验证特权模式是否生效
    启动后执行以下命令确认配置是否生效:
# 将your_container替换为你实际的容器名
sudo docker exec your_container capsh --print | grep "Current capabilities set"

如果返回的权限值结尾为=ep,说明特权模式已经正常开启。也可以直接在容器内执行需要特权权限的操作验证,比如执行mount -t tmpfs tmpfs /test,没有权限报错就说明配置正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 10:42:03