错误提示

  • 在运行docker容器时需要指定挂载根目录路径,但是执行就会报错,无法启动。

  • 错误提示

    ####你使用的不一样是/根目录路径####
    
    Error response from daemon: path / is mounted on / but it is not a shared or sla  ve mount
    
    守护进程的错误响应:路径 / 挂载在 / 上,但不是共享挂载或 slave 挂载
  • 演示所使用的docker-compose模板

    version: '3'
    services:
      netdata:
        image: netdata/netdata:stable
        container_name: netdata
        pid: host
        network_mode: host
        restart: unless-stopped
        cap_add:
          - SYS_PTRACE
          - SYS_ADMIN
        security_opt:
          - apparmor:unconfined
        volumes:
          - netdataconfig:/etc/netdata
          - netdatalib:/var/lib/netdata
          - netdatacache:/var/cache/netdata
          - /:/host/root:ro,rslave    ### 问题出在这行 ###---------------------------<<<<<<<<<<<<<<<<<
          - /etc/passwd:/host/etc/passwd:ro
          - /etc/group:/host/etc/group:ro
          - /etc/localtime:/etc/localtime:ro
          - /proc:/host/proc:ro
          - /sys:/host/sys:ro
          - /etc/os-release:/host/etc/os-release:ro
          - /var/log:/host/var/log:ro
          - /var/run/docker.sock:/var/run/docker.sock:ro
        environment:
          - NETDATA_CLAIM_TOKEN=_58mpbTF7PWR9eQe**********************oT01I7gav1Xkx4i5v1xKcipPvSTSBjdoBQQnMuAgsZi2qZErMQ
          - NETDATA_CLAIM_URL=https://app.netdata.cloud
          - NETDATA_CLAIM_ROOMS=7d4e******************80a86755
    volumes:
      netdataconfig:
      netdatalib:
      netdatacache:
    

演示环境

  • 物理机:黑群晖DS918+7.2.1

解决办法

  1. 打开群晖的SSH功能,使用终端软件进行连接,并切换到root状态下。

  2. 执行下面的命令(注意替换自己的路径)