Nextcloud update

Im not very exsperienced in a lot of this stuff. im trying to update my nextcloud server, but the easy way to update (from the nc web ui) doesnt work. pushing the update button just redirects me to the dashboard. if anyone can help me with a direct solution that would be awesome, if not, please help me on the way.

so in my serch for a solution i have met a lot of terms I dont really understand. Is the nc rockon concidered a docker installation?(have i understood correctly that a docker image(?) is a os runing paralell to/inside the os?) if so where would i write the comands that i would write in the terminal of a regular linux os? in the rockstor system shell?

i saw a solution where someone suggested using something called portainer (which i think is a program?) that would be impossible to use via rockstore right?

another option was to update via snap packages. is that possible on rockstore?

my current nextcloud version is 21.0.0. im sorry if someone gets annoyed because i could have just googled it, but im a noob and i need to be spoonfed to understand. (and i have googled for hours) thanks for any help.

@Jonas_Vinge

Yes, the Rockons are essentially a framework to manage a docker container/image with minimal configuration requirements from the user.

Portainer is another framework that aims to more easily manage docker containers. You have many more options and in-depth configuration, so it serves a similar purpose but is for a different audience (and if you search the forum here you will find a few conversations about this).

Probably oversimplified, but for your question: docker containers allow the publisher to package all requirements/programs/packages into one image, that runs on-top of the existing OS (which is different from a Virtual Machine, which usually contains also the OS, making it a much “bigger” footprint).

You can interact with docker container’s command line directly by “connecting” to the container (you can google the various options for that).

The Snap Package update will likely not work inside a docker container. The majority of docker containers are set up to not perform an in-place update, but if a new version of the application/process becomes available, usually the docker image itself will be rebuilt with the new updates and published.

This means, the simple way to update is to shut down the docker container, remove it and the image and restart the container (which will pull a new image).

In the context of Rockons, there are a 2 ways of how you can get the Rockon updated:

  • Since the configuration of your nextcloud should be on a Rockstor share, you can stop and uninstall the Rockon and reinstall it. This should pull the latest docker image version (which I assume contains the lastest updates).

Quickly checking on the docker hub, looks like the image was updated ~18 hours ago…

  • You could take advantage of the Watchtower Rockon, that you can set up to periodically check for new versions of underlying docker images and then automatically performs the update. If you think that’s a good fit, I can share my setup with you, it should be straightforward in any case.
2 Likes

thank you very much for the answer. if i reinstall the nextcloud rockon and the data share as the same as i have now will i have to go trough any specal procedures to get all the files back in the nextcloud ui? also will i have to change the trusted domains in the config file again or will all the settings stay even after uninstallation?

watchtower sounds very interesting. i would be very happy if you could share your setup.

thank you again for all the information, it cleared things up for me.

I don’t use nextcloud, but I think since all the config files are on a share (that you map during the Rockon setup) all of that should remain (e.g. which drives/locations you use for syncing, domains, etc.) because the uninstall only affects the Rockon itself, not any externally mapped data or settings. The only things you have to re-enter during the Rockon setup are the fields that come up during the installation wizard menu.

The Watchtower installation is straightforward:

Resource type Name Mapped representation
Env true WATCHTOWER_LABEL_ENABLE
Env 0 0 4 ? * FRI WATCHTOWER_SCHEDULE
Env true WATCHTOWER_CLEANUP

I have set it up, that it checks for a new docker image every Friday in the middle of the night but you can do any other type of cron expression (click the question mark next to it for more details).

For Rockons that you want to be managed (i.e. updated automatically) by Watchtower you have to add a label to that specific Rockon.

First turn off the Rockon (not uninstall)
Click on the wrench that will bring up the screen with the existing configuration
Select Add Label button

In my example here, I’m adding a label to the WireGuard Rockon, so I select the appropriate container and then add this value for the label:

com.centurylinklabs.watchtower.enable=true

select Next twice and then the Submit button. Now the label is added to the container, and when Watchtower wakes up the next time, it will check whether the WireGuard Rockon has a new docker image published. If it does, it will automatically update the underlying image and restart the container with its original settings.

1 Like

thank you very much, sadly i dont have the label button beside the add storage button… any idea? is it possible to add a label via system shell?

so, you don’t have either:

image

or (depending on whether the Rockon allows to add storage or not):

image

I should have asked early on, which version of Rockstor are you running currently?

image

4.6.1-0 is the current stable. Or are you running on the test channel. Or are you still running a 3.x version of Rockstor (based on CentOS).

I have not investigated much, but I don’t think you can extend the existing running container with labels without breaking the Rockon part of the framework …

2 Likes

it says System is running the latest Rockstor version: 3.9.1-0
i guess that exsplains it. do i have to reinstall to get 4.6.1?
i dont pay for the stable updates, so i guess that puts me in the test channel