Coolify logoCoolify

Coolify 代理中未找到证书解析器

如果在 Coolify 代理日志中看到错误消息 Cert resolver doesn't exist letsencrypt,通常意味着您的域名缺少 SSL 证书。当 Coolify 使用非 root 用户账户时,经常会出现此问题。

症状

  • Coolify 代理未为您的域名生成 SSL 证书。
  • Coolify 代理日志中出现错误 Cert resolver doesn't exist letsencrypt

诊断

要排查问题,请通过运行以下命令检查 /data/coolify/proxy 目录中 acme.json 文件的权限:

ls /data/coolify/proxy

输出结果应类似如下:

-rwxr-x--- 1 shadowarcanist shadowarcanist 32757 Sep  3 15:39 acme.json
-rwxr-x--- 1 shadowarcanist shadowarcanist  1762 Sep  3 18:36 docker-compose.yml
drwxr-x--- 2 shadowarcanist shadowarcanist  4096 Sep  3 15:06 dynamic

根本原因

当使用非 root 用户账户运行 Coolify 时,/data/coolify 目录的权限可能未正确设置。

如果 acme.json 文件的权限过于宽松(过于开放),Traefik 将拒绝使用该文件。这会导致 Traefik 无法访问该文件并生成 SSL 证书。

另一方面,如果权限过于严格,Traefik 也将无法读取或写入该文件。

Traefik 需要 acme.json 文件具有适当级别的权限才能正常工作。

解决方案

要解决此问题,请运行以下命令以设置正确的权限:

sudo chmod 600 /data/coolify/proxy/acme.json

sudo chmod 600 的作用是什么?

chmod 600 命令更改 /data/coolify/proxy/acme.json 文件的权限,使得只有文件所有者(Coolify 使用的用户账户)可以读取和写入该文件。这可以防止其他人访问或修改该文件,同时仍允许 Traefik 使用它。

On this page