Newly setup Seafile Server and SeaDoc. This is the error I’m getting on my browser. My full config is available on GitHub. You can see all of the environment variables that are setup for my containers in that config already. I can also translate from Nix to Podman quadlet configs or provide any detail that may be necessary to help debug this.
I don’t see any error logs in the seadoc container logs.
My setup is basically seafile-server, mysql, and redis containers running in a Podman Pod called seafile. SeaDoc server is running as a separate container called seadoc. Both the Pod and the Container belong to the same Podman Network and can resolve each others’ IP addresses via hostnames.
Caddy is also running in the seafile container to act as a reverse proxy to seafhttp, seafdav, notifications-server, seadoc, and serving media.
Hello, thank you for providing the detailed information. Regarding the issue you’re encountering, I have a few suggestions:
Path matching: In your Caddy configuration, it is recommended to normalize the path matching for /sdoc-server and /socket.io by adding a trailing slash. For example:
Environment variables: The SeaDoc container may be missing some required environment variables, such as SEAHUB_SERVICE_URL. Adding this variable should help SeaDoc correctly connect to the Seafile service.
Variable names: Double-check for typos in your configuration file. For example, INNER_NOTIFICATIN_SERVER_URL should be INNER_NOTIFICATION_SERVER_URL.
Documentation comparison: It might also help to review the official Seafile and SeaDoc documentation and compare your current configuration against the recommended examples, to ensure that no required settings are missing.
I made the fixes you suggested. I’m getting the same error. Additionally, I opened up the console and tried to opent the URL that’s throwing an error directly and got this error: {“error_msg”:“You don’t have permission to access.”}.
Does SEAHUB_SERVICE_URLhave to be the internal one like seafile:4000 or the external one like seafile.external.url?
Looks like seahub is able to authenticate with sdoc-server. The request in my browser console uses an auth token and gets a different response from the one I get directly accessing the URL.
I’m getting this in the browser: Cannot GET /sdoc-server/api/v1/docs/3137cc78-380c-4f5a-8b1c-abc445c78175/, with a response code of 404.
To debug the issue, I suggest you first identify which component return this 404 response.
Normally, the request should be handled by sdoc-server. Can you make sure sdoc-server correctly receive this request? Or is the request be served by seahub because the caddy proxy configuration is wrong?
The folder /shared in the seadoc container is mounted on my host at /srv/seafile/seadoc. I can see a sdoc-server.log file and a few more rotated versions of the same file from before.