• 坑(十八)—— docker启动容器时挂载没有权限问题


    docker启动容器时挂载没有权限问题

    复现

    centos 7系统

    docker run ......
    

    出现一下错误:

    docker chown: changing ownership of '/var/lib/XXX': Permission denied
    

    原因

    Centos7安全Selinux禁止了一些安全权限,导致mysql和mariadb在进行挂载/var/lib/mysql的时候会出现没有权限的问题

    解决方法

    有三种方式:

    • 在docker run中加入 --privileged=true 给容器加上特定权限

      • container内的root只是外部的一个普通用户权限
      • --privileged=true使container内的root拥有真正的root权限
    • 关闭selinux

      • 查看SELinux状态

        • /usr/sbin/sestatus -v :如果SELinux status参数为enabled即为开启状态
        • getenforce :也可以用这个命令检查
      • 临时关闭(不用重启机器):

        • setenforce 0
      • 永久关闭(需要重启机器)

        • 修改/etc/selinux/config 文件

        • SELINUX=enforcing改为SELINUX=disabled

    • 在selinux添加规则,修改挂载目录

    博客内容仅供参考,部分参考他人优秀博文,仅供学习使用
  • 相关阅读:
    ant中build.xml文件解释
    mysql练习题
    Mysql基本知识
    Python Socket 简单聊天室2
    Python Socket 简单聊天室1
    Python 导入模块
    Python 文件的处理
    Python yield
    Python 内置函数
    Python 生成验证码
  • 原文地址:https://www.cnblogs.com/linagcheng/p/14655026.html
Copyright © 2020-2023  润新知