为 NFS 共享生成 LetsEncrypt 证书

为 NFS 共享生成 LetsEncrypt 证书

我正在尝试生成 letsencrypt 通配符证书以用于各种网站(一个 FQDN,多个子域)。计划将这些证书保存在 NFS 共享上,以便我可以轻松地在各种 Web 服务器上访问它们。

但是,当我安装我的 NFS 共享/etc/letsencrypt以便将证书保存到那里时,我收到一个错误:

letsencrypt | IOError:[Errno 37] 没有可用的锁

我将共享上的文件夹模式设置为 777,因此它应该具有写访问权限。

我的docker-compose.yml文件:

version: '3.5'
services:
  letsencrypt:
    image: linuxserver/letsencrypt
    restart: unless-stopped
    network_mode: host
    cap_add:
      - NET_ADMIN
    environment:
    - OTHERSTUFF=blahblah
    - STAGING=true
    volumes:
    - ./config/letsencrypt:/config/dns-conf
    - Certs:/config/etc/letsencrypt

volumes:
  Certs:
    name: certs
    driver: local
    driver_opts:
      type: nfs
      o: addr=10.0.1.14,rw
      device: ":/media/NAS/Certs"

答案1

您可以

  • 使用另一个不会尝试锁定文件的客户端。在 letsencrypt 网站上,列出了大量客户端。
  • 使用您的客户端将证书下载到本地文件系统,然后将证书复制到 NFS 共享。
  • 尝试使用 NFS 挂载选项lock(尽管默认情况下它应该处于启用状态),或者local_lock=all

相关内容