by Devin Yang

建立于: 4年前 ( 更新: 4年前 )

在D-Laravel上的NFS挂载说明:
volumes:
  sites:
    driver: local
    driver_opts:
      type: nfs
      o: addr=host.docker.internal,rw,nolock,hard,nointr,nfsvers=3
      device: ":/Users/devin/dlaravel/sites"
在上方的device项目,我用的是sites的绝对路径,这样子,在console别名的状态下才不会出问题。
您默认的设置的设置会像下方这样:(代表了docker-compose的启动要在D-Laravel的目录上运行)
device: ":${PWD}/sites"
关於D-Laravel的NFS设置,您可以参看下方连结:
https://www.ccc.tc/notes/nfs-docker-and-laravel

日志一些NFS上使用的参数

nolock
选择是否使用NLM边带协议锁定服务器上的文档。 如果未指定任何选项(或未指定锁定),则NLM锁定用於此安装点。 使用nolock选项时,应用进程可以锁定文档,但是这种锁定仅对同一客户端上运行的其他应用进程提供排除。 远程应用进程不受这些锁的影响。

使用NFS挂载/ var时,必须使用nolock选项禁用NLM锁定,因为/ var包含Linux上NLM实现使用的文档。 在不支持NLM协议的NFS服务器上安装导出时,也需要使用nolock选项。
soft/hard
确定NFS请求超时后NFS客户端的恢复行为。 如果未指定任何选项(或未指定hard选项),则将无限期重试NFS请求。 如果指定了soft选项,则在发送重传重传后,NFS客户端将使NFS请求失败,从而导致NFS客户端向调用应用进程返回错误。

注意:在某些情况下,所谓的“软”超时可能会导致无声数据损坏。 因此,仅当客户端响应比数据完整性更重要时,才使用soft选项。 在TCP上使用NFS或增加retrans选项的值可以减轻使用soft选项的某些风险。
intr/nointr
选择是否允许信号中断此安装点上的文档操作。 如果未指定任何选项(或未指定nointr),则信号不会中断NFS文档操作。 如果指定了intr,则在进行中的NFS操作被信号中断时,系统调用将返回EINTR。

其他太简单了,用想的都猜的出来,rw就是可读写。nfsvers=3使用nfs3进行挂载,

Tags: docker nfs macos

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


macos

关於MacOS上的ditto命令

ditto命令第一次出现在Mac OS X (10.0)在一些状况下,他比cp命令直觉还好用,有兴趣的人可自行研究测试。假定我的目录下有个envs数据夹,我的测试如下:

docker

用bash更新docker-compse版本

安装最新版本的docker-compose

linux,macos

ps aux你会了吗?

对於Linux的系统管理者来说肯定要看懂ps aux命令,如果你想成为一个Linux系统管理者,或是你是一个Linux的使用者,都应该都要看的懂这个命令ps就是process status的简称,系统上跑了什么样的进程,状态如何运行的身份是谁都可以透过这个命令查出来。看到一些不该出现的进程,可能系统被入侵,被来挖矿了