gpt4 book ai didi

docker - 当 nginx 尝试从 docker 容器中读取 SSL 证书时权限被拒绝

转载 作者:行者123 更新时间:2023-12-04 22:42:36 24 4
gpt4 key购买 nike

我使用 Certbot 和 Nginx 进行了以下 docker-compose 设置

version: "3"
services:
web:
image: nginx:latest
user: root
restart: always
volumes:
- ./public:/var/www/html
- ./conf.d:/etc/nginx/conf.d
- certbot:/etc/nginx/ssl
- certbot:/var/www/certbot
ports:
- 80:80
- 443:443

certbot:
image: certbot/certbot:latest
command: certonly --webroot --webroot-path=/var/www/certbot --email email@gmail.com --agree-tos --no-eff-email -d www.domain.com -d domain.com
volumes:
- certbot:/etc/letsencrypt
- ./logs/certbot:/var/log/letsencrypt
- certbot:/var/www/certbot

volumes:
certbot:
Eveything 按预期工作,certbot 创建 SSL 证书并将它们放在正确的位置以便 Nginx 读取它们。
问题是 Nginx 没有正确的权限来读取在日志中给出以下错误的文件。
2020/12/04 09:50:03 [error] 27#27: *1 cannot load certificate "/etc/nginx/ssl/live/domain.com/fullchain.pem": BIO_new_file() failed (SSL: error:0200100D:system library:fopen:Permission denied:fopen('/etc/nginx/ssl/live/domain.com/fullchain.pem','r') error:2006D002:BIO routines:BIO_new_file:system lib) while SSL handshaking, client: 31.187.58.166, server: 0.0.0.0:443
正如 user: root 所见,我正在以 root 身份运行 Nginx 镜像。在 docker-compose 中,Nginx 仍然没有读取这个文件的权限。这怎么可能?

最佳答案

这可能是一条虚假信息。它“可以”加载证书,但可能无法验证它。
inx:[警告]“ssl_stapling”被忽略,找不到证书的颁发者证书
尝试这个
须藤 nginx -t
nginx 会告诉你到底发生了什么

关于docker - 当 nginx 尝试从 docker 容器中读取 SSL 证书时权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65141506/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com