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

需要登入才可留言!

类似文章


docker

关於GCE上FPM image如何变更owner

CCC网站升级php 7.2.0罗,有Docker的环境,轻松搞定php升级, 在Linux上Image的变更还是有些注意事项您应该了解。 如果您跟我一样透过docker将D-Laravel安装於Linux的系统上,当您变更不同的image时, 或许您可能会碰到,疑!怎么composer没有权限写数据夹的错误。 directory is not writable

docker, api

Swagger介绍

最好的API是使用Swagger工具创建的, 本文介绍如何用docker来运行swagger-ui及editor,让我们创建出可测试的API文档。 在docker的环境,我们可以很轻松的启动swagger编辑器及使用者接口。

docker

ubuntu上安装docker-compose

简单介绍我如何在ubuntu上安装docker-compose. 还满容易的。