如何解决带有 nginx 反向代理的 Docker Caddy
我正在尝试使用此软件包 https://github.com/PARC6502/docker-onlyoffice-nextcloud-caddy 在私有服务器上部署 nextcloud docker 映像。
由于我的服务器已经运行了一个 nginx 服务,我不得不将 docker-compose.yaml
文件修改为代理端口 80 和 443 到 8080 和 8443。
caddy:
container_name: nextcloud-caddy
image: abiosoft/caddy:no-stats
stdin_open: true
tty: true
restart: always
ports:
- 8080:80
- 8443:443
networks:
- onlyoffice
environment:
- CADDYPATH=/certs
- ACME_AGREE=true
- CADDY_LETSENCRYPT_EMAIL=admin@my-domain.com
- CADDY_EXTERNAL_DOMAIN=cloud.my-domain.com
volumes:
- ./data/letsencrypt:/certs:rw
- ./Caddyfile:/etc/Caddyfile:ro
我现在的问题是我想在我的服务器上设置一个反向代理来代理 docker caddy。 我已经尝试过这种配置,但直到我在 url 末尾添加 8443 端口后它才起作用。
server {
server_name cloud.my-domain.com;
location / {
proxy_pass http://127.0.0.1:8443;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/cloud.my-domain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/cloud.my-domain.com/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = cloud.my-domain.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name cloud.my-domain.com;
return 404; # managed by Certbot
}
- https://cloud.my-domain.com:8443 => 好的
-
https://cloud.my-domain.com =>
Client sent an HTTP request to an HTTPS server.
有没有可能让它以这种方式工作?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。