Skip to content

Instantly share code, notes, and snippets.

@nay-kang
Created October 12, 2025 16:14
Show Gist options
  • Select an option

  • Save nay-kang/de0bd7643f87fd31004bc4b38ae908d0 to your computer and use it in GitHub Desktop.

Select an option

Save nay-kang/de0bd7643f87fd31004bc4b38ae908d0 to your computer and use it in GitHub Desktop.
seafile deploy

It is hard to imagine the long live seafile deploy make so poor.

First: change http port

my goal is local deployment.I do not need publish the service to internet,that could waste money for server,storage or bandwidth. and if careless it could has security issues.if I want access the service I can rely on wireguard.
so I just need to deploy it on my homeserver.and my homeserver has some other services.I don't want give 80 port to seafile.the offical document tell nothing about the port. I tried to change caddy.yml port binding.

ports:
  - 8001:80

that only partial works.I can visit page and login.but file operation failed.by the way if I want visit the page I had to config .env to exact IP address like this

SEAFILE_SERVER_HOSTNAME=192.168.1.100

try to change the SEAFILE_SERVER_HOSTNAME to append port after it not work.
try to change SERVICE_URL and FILE_SERVER_ROOT in the seafile-data/seafile/conf/seahub_settings.py still not work.

AI and search has no work answer.finally I figure it out. I need to change seafile-server.yml this lines.

environment:
  - SEAFILE_SERVER_HOSTNAME=${SEAFILE_SERVER_HOSTNAME:?Variable is not set or empty}:8001
  - SEADOC_SERVER_URL=${SEAFILE_SERVER_PROTOCOL:-http}://${SEAFILE_SERVER_HOSTNAME:?Variable is not set or empty}:8001/sdoc-server

Seaf-fuse permission problem

if I follow offical docs. I had to read the mounted folder using root. but the true answer is

cd /opt/seafile/seafile-server-latest/

./seaf-fuse.sh start -o allow_other /seafile-fuse

I made this as a bash file for easy run after restart. and this is ridiculous which I had to manually run this.the project should provide an easy way for this.

Database root permission

there is no resolve for this.I just want to say why I had to give root permission even for the first run.that very unsafe.

re-deploy

I had to delete database,data folder manually to make it re-run from a failed deploy.

after all it works well on so much clients.easy and fast.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment