How to upgrade from 2.5.11 to 3.0 (docker)

  • Platform information:
    • Hardware: CPUArchitecture/RAM/storage Pi 4 2GB
    • OS: what OS is used and which version Hypriot latest
    • Java Runtime Environment: which java platform is used and what version docker
    • openHAB version: 2.5.11

Hi =) I’m willing to upgrade to openhab 3.0 =). Are there any release-notes or upgrade guides with things I have to consider on this major-upgrade? =). Maybe we can put something in the docs for the future =).

It has been in the docs for as long as I remember

1 Like

Yes.

2 Likes

I had assumed you already read the Release Notes.

Oh okay thanks :slight_smile: I thought you have to do special steps on order to upgrade from 2 to 3… thanks :slight_smile:

I upgraded a pretty stranded docker install from 2.5.11 to 3 last night. Sadly it got very lumpy. I’ve got it mostly back working now after a lot of manual config changes and restarts. On phone, will post details when on laptop. (it’ll be more helpful than the current, very unhelpful rhetoric of ‘have you ready the release notes and every post on this forum’ :))

Before start, manually delete cache and tmp folders. Not doing that caused issues. Got past that and worked through addons failing to install.

Last thing to get working now is mysql persistence which is broken.

Hopefully yours goes better

Okay thanks for the tip :slight_smile:

biggest issue I had was the thing freaking out about bindings it could not install. It then got itself all messed up and map, scale transformations did not install and it was basically a fresh install.

In the file addons.cfg in conf/services I had no additional bindings listed but found a lot in addons.cfg in userdata\config\org\openhab I had a lot of addons which it was complaining about. I removed them, for example, expire, http1, plex etc which I suspect are not supported by 3, deleted cache and tmp, and restarted the container. It gets better with each restart.

As mentioned, I am still without persistence and (mysql, influx survived?!) but will resolve that somehow.

As I said, hopefully yours goes better or at least the tips above help.

It’s a waste of time to do that manually because it is done automatically with every upgrade:

ya, no. It’s not. Sorry.
edit: If it is, it needs to be done after the upgrade and to do it again.

1 Like

Can you tell me what issue you had and why you had to clean the cache to fix it?

I never clean the cache manually. Usually any such issues are fixed by a simple restart.

Cleaning the cache can also make things worse because bundles are started in a different order.
So then you’d have to restart openHAB again, wasting more time.

See:

Hi

Went through the upgrade process, waited for the log file to reflect the upgrade was complete, watched for the loading of items and things etc (mostly file-based)
Went to the UI and it asked me to create the admin user which I did.
It was then very much a default, fresh install and wanted me to add my first things etc.
I left it like this for a few minutes and no change.
In the console, with log:tail, it was spewing all sorts of complaints that mysql was not loaded, could not load rulesengine, map transformation was not loaded etc so I decided to do a restart.

After that, log:tail was still very polluted with red and purple warnings and errors.
I then stopped it, cleared cache and tmp, and started again. This time the UI sprang to life and showed me my things and items but was still messed up with loads of missing addons.

As per other post, I cleared the addons from /etc/org/… addons.cfg and eventually have it sort of working.

However, I still cannot get jdbc maria or mysql to install or work (it installs but does not seem to work, nor does it last after a restart.

I’ve been running this in docker, on rpi4 4GB (only container running at the moment) for a year without hassle so unlikely this is a environment issue but more than happy to fault-find (but I am now out of my depth)

Are you sure your volume mappings are correct for OH3?

Pretty sure. my compose file below.
All folders are “in-use” as I can see it creating logs, I remove the things from conf and can see it remove them in the console, userdata is most certainly userdata as I can edit the addons.cfg to manually remove addons.

Can’t say I can see a difference between this and the example in the docs?

version: '3.6'
services:
    openhab:
        image: openhab/openhab:latest
        hostname: openhab
        domainname: home
        container_name: openhab
        networks:
             servernet:
                ipv4_address: 10.10.54.33

        ports:
            - "8080:8080"
            - "8101:8101"
        environment:
            EXTRA_JAVA_OPTS: "-Xms512m -Xmx1024m -Xss1024k"
            #OPENHAB_LOGDIR: ""
        volumes:
            - /etc/localtime:/etc/localtime
            - /etc/timezone:/etc/timezone
            - /docker/local/openhab/conf:/openhab/conf
            - /docker/local/openhab/userdata:/openhab/userdata
            - /mnt/storage/openhab/logs:/openhab/userdata/logs
            - /docker/local/openhab/addons:/openhab/addons
            
        devices:    
            - /dev/ttyUSB0:/dev/ttyUSB0:rwm
networks:
    servernet:
        driver: macvlan
        driver_opts:
          parent: eth0
        ipam:
          config:
            - subnet: 10.10.54.0/24
            
volumes:
  openhab_addons:
    driver: local
  openhab_conf:
    driver: local
  openhab_userdata:
    driver: local
1 Like

Is the /docker/local/openhab folder structure the same as the OH2 one? Just trying to figure out how an upgrade looked like a fresh install.

yup. That was where it ran from as OH2.5.11
Not changed the yml since created 12ish months ago.

Well, finally resolved the bad upgrade by starting again, copying over the json db and reinstalling the bindings one a time. Working now as a fresh start.

As to why the upgrade went bad…? No idea.

Some logging of those warnings/errors may help with explaining it. Without such details it’s like fumbling around in the dark.

Did you deploy as swarm or compose?

compose.

I am stuck on a single pi as a file change is not propagated through nfs so OH does no reload files edited on a share :frowning: