我正在安装 DAVFS
内卷docker
容器。
许多文档建议使用privileged run
命令...但我正在尝试构建 docker
图像与它。
我收到错误:
no free coda device available.
任何想法我做错了什么?我正在使用
AWS EKS
部署此镜像。如果可以使用 EKS
执行此操作,这个答案也是可以接受的。Docker 文件:
RUN apt-get update && apt-get install -y fuse davfs2 ca-certificates
RUN mkdir /mnt/ftp/
ARG WEB_DAV_URL=DAVFS_URL
RUN echo "DAVFS_URL DAVFS_USERNAME DAVFS_PASSWORD" >> /etc/davfs2/secrets
RUN mount.davfs $WEB_DAV_URL /mnt/
CMD service php7.2-fpm restart && cd /etc/apache2/ && apachectl -d /etc/apache2 -e info -DFOREGROUND
错误日志:
mount.davfs: loading kernel module fuse
mount.davfs: loading kernel module fuse failed
mount.davfs: waiting for /dev/fuse to be created
mount.davfs: can't open fuse device
mount.davfs: trying coda kernel file system
mount.davfs: no free coda device to mount
注意:我需要一些用于 docker build 的东西,而不是 docker run ......因为我使用的是 EKS,docker run 不适用...... :-) 有办法通过 Docker run 添加 CAP_ADD。
最佳答案
您可以在启动时在 pod 中使用 PersistentVolume。您需要检查支持 DAVFS 的音量插件。并将功能添加到您的 pod,您可以在您的 pod 中使用 securityContext 模块。请引用以下链接:
https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
关于linux - Docker,AWS-EKS : Docker-build command, Davfs 挂载不工作,没有免费的 coda 设备可以挂载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60897930/