如何在Docker容器中为mount命令启用Kerberos?

时间:2018-09-20 13:41:37

标签: docker ubuntu virtual-machine kerberos mount

有人可以告诉我如何使mount识别-o sec=krb5是Docker容器或dockerfile中的有效选项吗?

Ubuntu 16.04是否需要重启mount才能了解Kerberos? 该在线似乎没有任何信息。我只找到关于Red Hat的文章,没有帮助。

下面是我一直在尝试解决的dockerfile。

FROM ubuntu:16.04
ADD krb5.conf krb5.keytab /etc/
RUN apt-get update && apt-get install -y krb5-user nfs-common

我使用以下命令在容器中启动新图像。

sudo docker run --name test_krb --privileged -it test_krb /bin/bash

在容器内,我可以毫无问题地使用kinit,因此我知道Kerberos正在工作。但是,mount出于某种原因无法理解。

下面是我一直在容器内部运行的mount命令以及输出。

$ mount -vo sec=krb5,port=2050 <hostname>:/ /mnt/nfs
mount.nfs: timeout set for Thu Sep 20 04:06:45 2018
mount.nfs: trying text-based options 'sec=krb5,port=2050,vers=4,addr=X.X.X.X,clientaddr=X.X.X.X'
mount.nfs: mount(2): Invalid argument
mount.nfs: an incorrect mount option was specified

我曾在运行相同命令的VM中尝试过此操作,但在重新引导VM之前,它也失败了。重新启动似乎是实现此工作所必需的,但是我不确定如何在容器/ dockerfile中完成此操作。

谢谢

0 个答案:

没有答案