March 14, 20251 yr When I installed my Unraid system, I made the choice for numerous Docker containers. One of which was Seafile, that I had previously used in a non-Docker install. The migration was considerable, and ultimately I used a new 2nd instance, then replicated data manually between them. I do not want, nor see the need to, repeat this effort. I chose the then-`Official` Seafilie-Official image offered by `piranha771`, which I think is now no longer being maintained. In the Apps section, it displays "Not Available" for updates. It is currently running v.11.0.9. I have posted an `Issue` on their Github repo, though I do not expect any follow up. This repo is pulling from `seafileltd/seafile-mc`, which I see on Docker Hub was updated this current month (March 2025). Why can I not update my container? There are updates available. The alternative Seafile containers (listed below) also use the same repo. How are they able to keep updated? Is this some unique Unraid thing? @Fantucie --> Image is simply called `Seafile`, uses `seafileltd/seafile` @dglb99 --> Image is called `seafile-10` (pulling image `seafileltd/seafile-mc:10.0-latest`) and `seafile-11` (pulling `seafileltd/seafile-mc:11.0-latest`) Finally, can I "swap" from the current `piranha-771` image to any of these alternatives just be repointing my local files? I run MariaDB in its own Unraid container, that I provide the config for in the existing container config, so should be easy to replicate. No clue about file structures though!
March 15, 20251 yr Author Running a Portainer container, I can see this Image. What would occur if I manually pulled the latest image? Then restarted the container? Does Seafile internal upgrade mechanisms to support this? I recall in the past they had combinations of Shell scripts for version upgrades when I ran it before Docker. Second, what would happen if I just edit this container's config to point to the alternate `seafileltd/seafile-mc` repo image? Will it destroy the existing data?? Has anyone tried this? I guess the environment variables passed around would need to be validated?
March 15, 20251 yr Hi explosionhole! Thanks for opening this thread! I just installed Seafile yesterday via the CA docker build seafile-11. I'm still trying around with it. Had some hard time getting it running first. On the Android client I couldn't upload at all. A simple reinstall solved it. Now I'm having problems - Android uploads break after appr. 1,5 GB. I pulled the Seafile PE docker image. But it's working so far except that Android upload thing. So I'd really love to get Seafile PE 12 up and running. Then I would test it next to Resilio Sync to then finally decide which I'd use in the future for syncing everything together. So I'll follow this thread for sure. Best regards, Tom
March 15, 20251 yr Author 59 minutes ago, tomkenobi said: Hi explosionhole! Thanks for opening this thread! I just installed Seafile yesterday via the CA docker build seafile-11. I'm still trying around with it. Had some hard time getting it running first. On the Android client I couldn't upload at all. A simple reinstall solved it. Now I'm having problems - Android uploads break after appr. 1,5 GB. I pulled the Seafile PE docker image. But it's working so far except that Android upload thing. So I'd really love to get Seafile PE 12 up and running. Then I would test it next to Resilio Sync to then finally decide which I'd use in the future for syncing everything together. So I'll follow this thread for sure. Best regards, Tom Glad you are on the Seafile story - I have used for many years, and think it offers many great features. My libraries are now over 120GB, but I do not focus on huge files for this purpose. Mostly PDFs, JPGs, PNGs. The largest files tend to be media, which I continue to use more basic SMB, even NFS, shares. My experience, the desktop clients are most reliable, especially with huge files. You're welcome to join in on on this thread, but it is a bit different. More Docker shenanigans, swapping between repo images, by only repointing the container to the same underlying storage / file structure. But also ensuring that as container versions are upgraded, Seafile's internal update scripts / configs are applied, if this is still relevant. There is a whole backup/restore function in their documentation, but I don't think it resolves my issue with switching between image repos, except (I guess) if I initially swap to exact same server version, do my restore, then upgrade that container image.
March 16, 20251 yr Author I followed the Seafile documentation to backup the folder structure and MariaDB's (cc_net, seafile_db, seahub_db). I did this manually, it could easily be scripted. I don't do this, as my Unraid backup process simply copies this live data folder structure with Duplicati (as a VM) and also a User.Script with the equivalent MariaDB `mysqldump --all-databases` command. Then I clicked into my `Seafile-Official` container item, toggled to the `Advanced View` (top right of the page), then edited the `Repository` value to: seafileltd/seafile-mc:11.0-latest Scrolled to the bottom, and clicked Apply. This worked, and downloaded the latest version for v11, which is `11.0.13`. Reading the Seafile docs again, the container itself contains the internal upgrade scripts, and watching the container's logs when it first upgraded, I saw it pick up the appropriate upgrade script. I also note the Unraid Docker page now shows this container as `up to date` again. So it is just a change in the tagging text that has occurred. This same behaviour will occur when upgrading between MAJOR versions. v12.0.10 is available, but it seems on the forums there are some known issues which should be addressed in v12.0.11, which I will wait for. When I do this, all I need to do is update the above Repository line to the equivalent for `12.0-latest`.
March 20, 20251 yr Thank you for all the additional information. I'm really looking forward to see development regarding Seafile on Unraid. I'll also go back from PE to CE as I relly do not need those additional features as I mainly use it for myself. I'm pretty sure there will be no other user than myself. You will probably already know this video by AlienTech42. Down in the comments there is also Seafile 12 mentioned. So I guess good news will be seen soon. For me, as I'm still experimenting with it, I do not have lots of data right now. And I hope there will be an easy method for upgrading from 11 to 12. I of course read the docs regarding upgrading using docker compose or installing 12 from scratch. But I'm not an expert and I use Unraid only for a very short time. So I don't want to risk breaking anything on the running system.
April 8, 20251 yr I have not tested if you can jump from the old docker image used on Fantucie's template to one of the newer images on my templates. I would recommend starting from a fresh install, but if you have a lot of data, manually changing the repository to go up one major version at a time is how I would do it. Here is where I try to keep all my Seafile notes/steps to install and maintain if you're having issues. Version 12 had a lot of changes made, and we cannot simply change the tag from ``11`` to ``12``. I have not had the time to figure out the best way to install version 12 and update the template yet. If anyone does get it running, let me know, I'm happy to update the template.
April 9, 20251 yr Author 23 hours ago, dglb99 said: I have not tested if you can jump from the old docker image used on Fantucie's template to one of the newer images on my templates. I would recommend starting from a fresh install, but if you have a lot of data, manually changing the repository to go up one major version at a time is how I would do it. Here is where I try to keep all my Seafile notes/steps to install and maintain if you're having issues. Version 12 had a lot of changes made, and we cannot simply change the tag from ``11`` to ``12``. I have not had the time to figure out the best way to install version 12 and update the template yet. If anyone does get it running, let me know, I'm happy to update the template. Thanks for the contribution, @dglb99. For the purposes of this discussion, why can't you update the tags? Who has tried it? What was their outcome? I assume a full data backup should allow to either: - restore the data into a new container running an older container version, or - duplicate the backup data, and create 2nd container at the new version. Then delete the copied data if everything is working I have had no time to even start or try...
April 10, 20251 yr 20 hours ago, explosionhole said: For the purposes of this discussion, why can't you update the tags? Who has tried it? What was their outcome? I have tried it. Seafile will fail to start. Logs will say something to the effect of, "cannot find .env file". If you ever go through the Seafile documentation, you'll see all their docker instructions are for docker compose only. I tried briefly, but was not able to pass through a .env file using an unRAID template, which utilizes docker run. In theory docker compose and docker run can do the same thing, but I don't have enough experience to know how to translate one from the other very well. Versions 11 and lower did not require a .env file. That change was introduced in version 12.
April 11, 20251 yr @explosionhole and @tomkenobi I was able to get seafile 12 running last night. You should see a new template in the app store now. I have it marked as Beta though since I have not upgraded my main seafile instance yet, and fully tested version 12 for myself. There may be config issues you have to resolve in your ``seafile.conf`` and ``seahub_settings.py`` but I'm not sure.
April 12, 20251 yr 23 hours ago, dglb99 said: @explosionhole and @tomkenobi I was able to get seafile 12 running last night. You should see a new template in the app store now. I have it marked as Beta though since I have not upgraded my main seafile instance yet, and fully tested version 12 for myself. There may be config issues you have to resolve in your ``seafile.conf`` and ``seahub_settings.py`` but I'm not sure. Hi dglb99, quick question to you as the maintainer of the unraid template : updating a working seafile 11 to 12 will not work as is right ? I've read the seafile provides a script to facilitate this update, but I fail to understand how to run that inside my running container, then pushing changing the "11" to "12" tag. Is it something you can add to the template ? like to sort of Yes/No "I'm want to update from seafile 11" ?
April 12, 20251 yr Not something I can add to the template for a variety of reasons unfortunately. Seafile will detect that you’ve pulled a different version docker image and run the update scripts automatically. It’s pretty good about that in my experience. If you pull the latest version 12 docker image without changing anything else in your template it won’t work. You need to pass through a JWT secret key. you can either add it to your existing template or use the new one and fill out type previously used variables (location, password, etc.) I’d recommend setting up a test environment to try it on first before updating your actual seafile server. I haven’t updated my primary server yet, but each time I’ve setup a new version 12 instance or updated a new 11 instance to 12 it seemed to start fine.
April 12, 20251 yr Author Yeah, I've seen the internal container handles version updates very well in the past. The DotEnv (`.env`) file is only a different method to pass in environment variables, so no reason it should not work as is(?) So long as the same variables (and syntax) are used, I'd expect it to work. Unless v12 adds new or changed ENV VARs... Or maybe it does a filesystem check of the DotEnv file. Sorry, not actually tried any of this. But if you got a running version that would suggest the config's work... What other tests / checks are necessary to upgrade from a "beta" status?
April 14, 20251 yr v12 did change the environment variables. Only the "JWT_PRIVATE_KEY" variable should be the new required one. The way the error message was worded I thought (and I believe many overs did as well) that it was actually doing a filesystem check for the .ENV file. Turns out that is not the case though, and passing it through using the unraid template works fine. As far as removing the "beta" status, when I move my production server to version 12 and have no issues, or hear back from some other people that it is working fine for them I'll remove it. Even though the server started, I have not tested it behind my reverse proxy yet, mobile app access, etc. Hope that clears some questions up for you.
April 21, 20251 yr Hi @dglb99! Thank you so much for jumping into this thread. I’ve only now found the time to give it a try. Unfortunately, I’m getting a 502 error and I’m not sure why. As far as I can tell, I followed the same procedure I used for Seafile 11. Since I only want to switch once everything works, I stopped the existing Seafile 11 and MariaDB Docker containers and created a new MariaDB instance for Seafile 12. Accordingly, I named the new container "seafile12-mariadb" and adjusted everything else to match. See screenshots below: Here are the settings for the MariaDB docker container: And here the settings for seafile-12 docker container: By the way, I already had issues with Seafile 11 not working properly with seafile-net, so I used an already existing custom Docker network instead. I did the same thing here. I’d really appreciate your support with troubleshooting this. I’m sure it’s something on my end, but I just can’t find the solution. Please let me know which additional info or screenshots you might need. Thanks a lot in advance! Best regards Tom And here's the container log after starting the seafile-12 container: Edited April 21, 20251 yr by tomkenobi Adding container log
April 21, 20251 yr I have now also renamed the SQL from seafile12-mariadb to seafile-mariadb and also renamed the container to seafile-mariadb. Now everything seems to be exactly as it was setup for seafile-11 before. I'm getting this error now when staring the seafile-12 container. Thias also happened before renaming this: I also tried accessing the db within the container like this: So the MYSQL_PASSWORD works. I double checked the password (here MYSQL_ROOT_PASSWORD) I set in the settings for the seafile container, matching everything to the previous setup. Don'T know what I'm missing here.
April 21, 20251 yr Back again. Now I did what I for sure didn't do when setting up Seafile 11. I went to https://github.com/chirmstream/unraid-templates/blob/main/seafile-12/seafile-12_guide.md and found the following: Quote Go ahead and remove MYSQL_DATABASE, MYSQL_USER, MYSQL_PASSWORD, and REMOTE_SQL. Seafile will connect to Mariadb with the root password and create all necessary users and databases. Suddenly I got this (again like in Seafile 11): I can now move on to the WebUI using either the local IP:8080 (I changed from 8081 to 8080 to make sure this wasn't the problem). I use the same credentials as with Seafile 11. But now there's this message showing up: So I think I already got quite far till this point.
April 21, 20251 yr I'm glad you found my note regarding the database setup. I've found its much easier to only define the container root password and pass that along to Seafile. Seafile is smart enough to setup all the database tables and everything on it's own. I've considered make a mariadb template just for Seafile so that people don't mistakenly fill that stuff out and then give up when it doesn't work, but I think it is 'iffy' on how well that would adhere to the community app store ethos. They don't want people making a bunch of templates that use the same container. When you search mariadb there are already a few options so I'm hesitant to add more. From your logs Seafile is working and configured correctly. What is your reverse proxy setup? Can you access seafile over LAN (192.168.xx.xx:8082)? Double check that your reverse proxy is pointing to the correct port for Seafile (8082 from your logs, template screenshot showed 8081). Once you get to the webui if If you're having problems uploading files you may need to change "SEAFILE_SERVER_PROTOCOL" to http. My Seafile server is behind NGINX Proxy Manager with Lets Encrypt SSL certificates generated by the proxy manager. I had issues uploading files until I set "SEAFILE_SERVER_PROTOCOL" to https. I made that the default setting for the template because I believe this is how most people will setup their server, but if yours is different you might have to change it.
April 21, 20251 yr Hi @dglb99! Thanks so much for your quick reply – much appreciated! Honestly, I should have just read more carefully. You clearly pointed out in the description that the four fields in the MariaDB container should be cleared. I didn’t take that seriously enough at first – that’s on me! The Seafile WebUI is reachable both locally over LAN and via a FQDN with https. I’m using NGINX Proxy Manager as well, and everything seems to be configured correctly there. I changed the forward port in the docker container to 8080. MariaDB ist also set to standard 3306. However, after entering the username and password on the login page, I can’t get any further. At some point I briefly tried setting SEAFILE_SERVER_PROTOCOL to http, but that didn’t change anything – though it’s possible something else wasn’t right at the time. I’ll test it again with that setting and report back once I’ve tried it. Thanks again for your help!
April 21, 20251 yr Can you confirm you're trying to login to the admin account? I've noticed, if I type the credentials incorrectly for the admin login it won't say "wrong username/password" or something to that affect and instead redirect me to a blank error page. Confirm you're using the correct login credentials and if it's still not working since this was a test install I'd nuke it all and start fresh. Since you're template(s) are setup correctly it should go quickly. Shutdown seafile and seafile-mariadb docker containers. Delete the appdata folder for mariadb (/mnt/user/appdata/seafile-mariadb for example). Delete the seafile data folder (/mnt/user/seafile for example). Delete the seafile template, and check 'yes' for removing the container image. This way we will pull a fresh container image that we know has not been changed. Restart your mariadb container. From the community app store, under previous apps reinstall seafile. It will still have all of the forms you filled out earlier (database root password, admin email, etc.) so you shouldn't need to touch anything.
April 22, 20251 yr Yeah, I'm pretty sure I didn’t mess up the login. I'm using Bitwarden and copied the credentials straight into the Seafile 12 container – not much room for error. But hey, never say never. Since I haven’t started using Seafile in production yet, I’ve got no problem wiping everything and starting fresh. I’m still in the exploration phase with Unraid – haven’t had the server for that long, but I’m loving it. Lately, I’ve been focused on gathering and organizing all my scattered photo collections. I ditched Google Photos years ago and just recently exported everything from Flickr. After some final checks, I’m ready to delete it all. I ended up choosing Immich, and just yesterday copied about 30,000 photos to Unraid – then backed it all up to an old Synology DS using rsync. Right now, it’s just photos, movies, and TV shows on the server, but that’s going to grow. Seafile really impressed me – it beat out Resilio Sync mainly because I often need to share files externally, and Resilio is a bit clunky for some people. Still, I’m not giving up on it – it’s too good to ignore completely. And yeah, I guess this whole journey is driven by one thing: getting my digital life in order and building a solid backup setup. I’ve been burned before – I was hit by Deadbolt on a QNAP a few years ago. Total nightmare. I got lucky and found a one-off backup, but a lot of personal videos from my sports events were lost. Some might still be on a 20-year-old hard drive that's now dead. Recovery would cost €1,500–2,000. Maybe someday, if I win the lottery. So yeah – lesson learned. Never again without a backup.
April 25, 20251 yr Now I finally found some time to delete everything and start completely from scratch. I installed MariaDB with just the MYSQL_ROOT_PASSWORD set, and installed Seafile 12 exactly according to the instructions. I always made it successfully to the login page — both locally and through the FQDN set up in NGINX Proxy Manager. However, every time I try to log in, I end up on the following error page: Page unavailable Sorry, but the requested page is unavailable due to a server hiccup. Our engineers have been notified, so check back later. I have no idea what is causing this. I also tried going from https in the container settings to http. The Seafile container log right after deployment shows no errors. Maybe I need to make some adjustments in seafile.conf or seahub_settings.py. I vaguely remember that during my very first attempts with Seafile 11, I had to change something there to make it work. Since I'm heading out on a weekend trip in less than two hours, I'll leave it as it is for now. Maybe I'll get another chance to experiment with it on Monday. Wishing everyone a great weekend! Best regards, Tom
April 25, 20251 yr Community Expert 4 hours ago, tomkenobi said: Page unavailable Sorry, but the requested page is unavailable due to a server hiccup. Our engineers have been notified, so check back later. Same issue with me, as soon as I log in I get that same error page. Honestly between this, nextcloud, and filerun... this is by far the most flaky of the three services I've tried. (I did manage to get version 11 running for a little while) Edited April 25, 20251 yr by MowMdown
April 26, 20251 yr Seafile 11 was running without issues on my server. I'm confident that Seafile 12 will work as well. I wouldn't really compare these three applications directly. I've also looked into FileRun and, of course, I'm familiar with Nextcloud. The latter feels way too bloated for my needs. Sure, you could strip it down to the essentials, but I'd rather use a product that's focused on doing just one thing: file synchronization — and doing it securely, with encryption on both client and server. That's not what FileRun offers. It's basically just a nicely designed file browser. On top of that, I also need a mature system for managing shares and users, along with versioning. FileRun simply doesn't provide that. And since the code is proprietary, FileRun is a no-go for me anyway.
April 28, 20251 yr Community Expert On 4/26/2025 at 2:41 AM, tomkenobi said: That's not what FileRun offers. It's basically just a nicely designed file browser. On top of that, I also need a mature system for managing shares and users, along with versioning. FileRun simply doesn't provide that. Not to get too off-topic but It has file syncing, versioning, user management, etc. But you're right it is closed sourced. which I get if you're not for that. It's pretty similar to seafile in a lot of ways but one major advantage is that files aren't chunked and are fully accessible wherever you're keeping them. You can access the files right from the unraid share. for the file-syncing it actually uses the nextcloud desktop sync app. works just the same as "seadrive" does. Supports OnlyOffice, WebDAV, file encryption. google cloud doc sync. It's quite fleshed out. I can create and share files with public links etc. Edited April 28, 20251 yr by MowMdown
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.