Docker - Seafile 11 to 12 update - examples?

Uff

I am currently running 2 seafile servers.
My "normal’ server that runs on Ubuntu and I also run a Docker server.

I would like to upgrade from Seafile 11 to 12 and struggle with both servers.

This is related to Docker:
I am new to Docker and wanted to ask if there is an example configuration for upgrading Seafile Docker 11 to 12?
Someone who did this already and can help?

I am of course reading through Upgrade Seafile Docker - Seafile Admin Manual but I am concerned I might mess it all up with wrong settings and possibly insufficient configuration settings.

This really isn’t a simple upgrade for me.

I am with seafile since Seafile Server 2.x or 3.x

Thanks for your help in advance,

Struggling Chris


Specific questions are:

When I have an existing installtion, it states I should delete the INIT_SEAFILE_MYSQL_ROOT_PASSWORD definition in .env.
Should I also delete it in the seafile-server.yml

When my SEAFILE_MYSQL_VOLUME differs, should I adjust the text in the seafile-server.yml as well?

I removed it from both. It’s probably enough to just have the wrong password in INIT_SEAFILE_MYSQL_ROOT_PASSWORD. It shouldn’t need that at all if it knows this is an upgrade, it just needs that to create the databases and user. If it gets confused and thinks it is a new setup, having that password could trash your database.

When I did the upgrade from 11 to 12, I was also converting from not-docker to docker (actually podman pretending to be docker because I don’t like some of the choices docker made).

I would suggest that you make a VM to try the upgrade in to make sure you have the procedure worked out. Then get good backups. Then if your production machine is a VM, snapshot the VM and do the upgrade for real (with the snapshot there so you can quickly roll back and start again if you need). Yeah, that probably sounds paranoid, but my seafile has nearly 1TB of data and a few extra hours of paranoia probably saved me a few hours of recovering and apologizing to the users.

Here’s some notes I made on how I did the upgrade. I’m not sure it will be much use if you didn’t also decide to use podman, but might be worth a ready anyway.

1 Like

Hi, and thank you so much already.

Generally , I totally agree with your proposals, it’s just that my current sea file installation is not in a VM.

I am considering, to set up seafile 12 in Docker and then back up my current installation and recover it into that docker installation.
I will read the information you provided in your link. Hopefully I will get to that tomorrow :slight_smile:

thanks a lot again for taking the time, this all sounds really really helpful.

What scares me a bit from swapping to Docker is what I experienced yesterday and wrote in my other thread.
I only rebooted the server running a seafile docker installation and now I get a 502 nginx error. And I have no idea where to start looking for errors, because it’s still all a bit new to me.
That shouldn’t happen.
While I understand that Docker is certainly the future, in the end, all I want, is a working and stable installation.

1 Like

I have no idea where to start looking for errors, because it’s still all a bit new to me.

You need to check whether all containers are running without error and that any external volumes are properly mounted. Then you can try to access the service locally with curl first.

I would advise that.

I’m also not familiar how docker-compose works. I chose to convert the containers into systemd services using quadlet.

You can probably find somewhere in the forum my seafile 11 config. I’ll be converting this to seafile 1 whenever I find time in the following weeks but I have some other more urgent things to do now so don’t hold your breath.

With systemd it is more easier for me to track services status, log keeping, etc.

With pure docker-compose, I assume docker ps, docker logs and docker inspect will be your initial debugging commands. Although actually with seafile logs are written to a directory so you have more places to look for logs in.

Hi @seadolphin

Thanks a lot for taking the time to help me.

All understood.