New Seafile docker is ready!

The new Seafile docker is ready. This new version let’s you use docker command directly to run, stop and upgrade Seafile server. In other words, it works more natively with docker technology.

In the long term, the docker way will be our recommend way to run Seafile server.


Could you please create a option to use existing mariadb databases?


Hi Daniel.

Would it be possible to add examples on that page of how to start and configure the docker container specifying the storage location (eg., d:\seafile) when run inside Docker for Windows plus perhaps a few basic things like viewing container logs/the cli?

I’m keen to test this under Docker for Windows as I realize the previous installation method is unlikely to be updated, and Docker is the future of Seafile.

Unfortunately the existing documentation is insufficient for people unfamiliar with Docker for Windows to really use.

My aim is to build a seafile installation that stores the files and data outside the container on a user defined path (eg., D:\seafile), uses a custom port (not 80/443 so it suits hosting a website on the same server), uses a LetsEnctypt cert, and redirects HTTP to HTTPS, and lastly migrate data from an existing Seafile installation into this one (if it proves not too difficult).

I’m happy to document the steps in a forum article once I have this working so the next person has an easier time of things.



PS, I meant to mention that talks about using a windows path (eg., c:\seafile) but then uses a Linux example, not a Windows one :slight_smile:

The version is also outdated - 6.2.3 is available, 6.2.1 isn’t.


That’s a docker problem and not one for seafile. You could buy TheDockerBook, it’s very good or watch videos or look at the docker manuals.

Ummm… that link is the Windows instructions, which are out of date and incorrect. Just suggesting it might be worth correcting them, and possibly giving a few additional seafile examples to get someone going.

Great news! Will try it in the future!

This is a very nice addition to simplify a Seafile installation, works great on a local machine. Are there any plans to also release a version/fork which installs the Pro version instead of the community one? Thanks.

There are unofficial Autobuilds of the pro version from other users


I have tested this and it works fine but it seems to be stucked at version 6.2.5. How do I upgrade to a new version? Thank you.

6.2.5 is still the stable one, not 6.3.1. So it’s the right version, upgrade is possible, but complicated.
Write if you wanna try it, I’ll give the instructions.

@daniel.pan: How do you want to handle the Database upgrade?


since yesterday, I think, the docker image was updated to 6.3.2. The update went flawlessly. Thank you.


I am trying to run a Garbage Collection in my Seafile Container. Each time I stop Seafile the whole container is being shutdown. Does anyone made the same experience? Is there a solution?

Thank you

. Did you got in with docker exec -it seaf_container /bin/bash or did you just exec I had no problems with my test enviroment.


I did docker exec -it seaf_container /bin/bash and then /opt/seafile/seafile-server-latest/, Then I am told to stop seafile by stop, which I do but here the whole container stops.

I don’t understand what you exactly mean by “just exec”. Thank you for your help.

It was also reportet here: Docker automatically terminates after a minute within the container /opt/seafile/seafile-server-latest/ stop

No real solution, but a work-around.

Thank you for your hint. As you said It is a work-around. As Seafile Ltd said that docker would be the preferred way of installing and running Seafile Server (correct me please, if I am wrong), it should be fixed. Again thank you.

1 Like

Thank you for your hint. As it is described in the description, no modifying of a script is required here.

From the description:

Garbage Collection
When files are deleted, the blocks comprising those files are not immediately removed as there may be other files that reference those blocks (due to the magic of deduplication). To remove them, Seafile requires a ‘garbage collection’ process to be run, which detects which blocks no longer used and purges them. (NOTE: for technical reasons, the GC process does not guarantee that every single orphan block will be deleted.)
The required scripts can be found in the /scripts folder of the docker container. To perform garbage collection, simply run docker exec seafile /scripts/ For the community edition, this process will stop the seafile server, but it is a relatively quick process and the seafile server will start automatically once the process has finished. The Professional supports an online garbage collection.

Just to say: Everything is fine now :wink: