seafile12,如何使用宿主机的nginx进行https代理

我是使用容器安装的seafile。因为宿主机上已经存在了nginx并且开启了80和443端口,所有caddy只能映射880:80 和 8443:443。
我希望能通过宿主机nginx上的443 代理到8443中。这该如何进行配置

可以禁用caddy,然后seafile-server中配置8443端口,就可以用宿主机的nginx的443代理8443端口。

有啥比较简单的方式完全禁用caddy吗?直接在.env里去掉caddy的部分?

多谢

问题已经解决,禁用caddy后,将seafile对应的端口映射出来,在宿主机用443代理直接访问,不走seafile的80端口。

.env去掉caddy对应的内容,yml中去除掉caddy相关的代理,例如seadoc的yaml,onlyoffice的yaml

多谢多谢,我试下。

发现seadoc还挺依赖caddy的 :joy:

其实caddy就是代理并重写的seadoc的地址,我主页刚写了篇文章,就是没用caddy,用宿主机nginx代理的,可以参考

1 个赞

Caddy和nginx都是前端web服务器,你可以选择任意一个,只是这两个服务器配置语法不一样而已,nginx成熟稳定,需要结合acme.sh自动化证书,caddy是新东西,性能和稳定性估计没有nginx好,但集成自动化证书。

估计是你没有配置好,我就是用的nginx,没有用caddy,没啥问题

都可以,你这种是不用内置nginx,更推荐映射seafile容器里内置的nginx的80端口出来,用宿主机nginx代理,容器隔离嘛,他容器设计内置nginx管理所有服务是有一定道理的

多谢多谢。

有对应的nginx来支持seadoc的配置吗,学习一下。

英文官网有,你找下

在nginx配置中添加以下内容,同时要修改seafile-server.yml中的配置,我的这个是修改了seadoc的容器名称为seadoc,官方配置应该是sdoc-server,参考对照修改即可。

    location /seadoc/ {
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
        add_header Access-Control-Allow-Headers "deviceType,token, authorization, content-type";
        if ($request_method = 'OPTIONS') {
            add_header Access-Control-Allow-Origin *;
            add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
            add_header Access-Control-Allow-Headers "deviceType,token, authorization, content-type";
            return 204;
        }
        proxy_pass         http://seadoc:80/;
        proxy_redirect     off;
        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-Host  $server_name;
        proxy_set_header   X-Forwarded-Proto $scheme;
        client_max_body_size 100m;
        access_log      /var/log/nginx/seadoc.access.log seafileformat;
        error_log       /var/log/nginx/seadoc.error.log;
    }

    location /socket.io {
        proxy_pass http://seadoc:80;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_redirect off;
        proxy_buffers 8 32k;
        proxy_buffer_size 64k;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
    }

seafile-server.yml中找到这个配置并修改

SEADOC_SERVER_URL=你的网站:端口号/seadoc
1 个赞