docker - Docker 上的 Azure FileShare 返回无法应用新功能集
问题描述
我正在使用 MySQL Docker 容器,我想在其中使用 Azure 文件共享。要创建 MySQL Docker 容器,我使用以下 Buildscript。
FROM mysql:5.7
RUN apt-get update && apt-get upgrade && apt-get install sudo
RUN sudo apt install cifs-utils -y
RUN sudo apt-get install curl -y
RUN cd home
RUN mkdir install
RUN cd install
RUN curl curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
当我进入这个容器时,我使用从 Azure 门户中选择的以下命令并创建一个 bash 脚本。
当我执行脚本时,我得到这个错误:
无法应用新的能力集。
你能帮我把 Azure 文件共享挂载到 Linux 吗?
非常感谢,
埃里克
解决方案
为了能够挂载 Azure 文件共享,您需要向容器添加“功能”。请参阅https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities
在这种情况下,如果您运行docker run --cap-add=SYS_ADMIN --cap-add=DAC_READ_SEARCH my_image
(添加这两个--cap-add
选项),那么您的容器将能够安装共享。
推荐阅读
- rust - 找到多个 rlib 候选者
- c# - 根据特定列中的值应用行背景(WPF DataGrid)
- asynchronous - Dart Future.doWhile 阻止所有执行
- r - 使用 R 提取 XML 中的属性
- javascript - 如何将父对象迭代到子对象并推入数组javascript(vuejs)
- php - 如何从txt数据库循环数据?
- postgresql - Postgres FTS。调整解析行为
- python - python中的id()函数和is运算符
- python - 你如何正确地从这个嵌套的 XML 中获取?
- reactjs - 为什么我的自定义钩子没有在路径更改时重新初始化?