Greetings @christoph,
I assume based off what you said with doing an OS and application update at the same time you are trying to make use of what we call “synchronous updates”: Torizon Updates Technical Overview | Toradex Developer Center
As detailed in the link I just shared, what you described shouldn’t occur. The new containers should not be started till after the reboot into the new OS version. As a test I did a synchronous update on my own device to double-check the order of operations.
After doing the update but before the reboot I see the following:
torizon@apalis-imx8-06738453:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
torizon/weston-vivante 3 2a3f78a6e6cf 8 weeks ago 512MB
torizonextras/eros-server arm64-prod b60eba05d538 4 months ago 213MB
torizonextras/eros-view imx8-prod 2822dec61bd2 4 months ago 291MB
torizon@apalis-imx8-06738453:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c465efb12e45 torizonextras/eros-view "./erosView" 18 minutes ago Up 18 minutes torizon-eros-view-1
cb67155ed42e torizonextras/eros-server "node out/lib/index.…" 18 minutes ago Up 18 minutes 0.0.0.0:3030->3030/tcp, :::3030->3030/tcp torizon-eros-server-1
As seen we have the old container still running eros-view
& eros-server
. The new container image has been pulled weston-vivante
, but it’s not running yet, which is expected since the device hasn’t rebooted yet and we are still on the old OS version.
Now after the reboot, we should be in the new OS version. Checking the state of the containers we see:
torizon@apalis-imx8-06738453:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
torizon/weston-vivante 3 2a3f78a6e6cf 8 weeks ago 512MB
torizon@apalis-imx8-06738453:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ed9fbea78608 torizon/weston-vivante:3 "/usr/bin/entry.sh -…" 54 seconds ago Up 52 seconds torizon-weston-1
Now the new container is running and the old container images have been cleaned from the system.
That said, there is one possibility I can think of that would result in what you observed where the new containers are started on the old OS version. If the Aktualizr update client is restarted before the reboot happens, then it will think a reboot has occurred and will try to start the new containers.
Normally a reboot is requested during a synchronous update so it can be finished. But if you disabled the automatic reboot mechanism then, Aktualizr will restart after some time. Or, if for some reason it takes a long time for the reboot to happen on your system this could result in a similar thing.
So now I have some questions for you:
- Did you disable the automatic reboot for updates on your devices?
- If no, then do you observe your system even reboot at all automatically during the update?
- Can you share the Aktualizr logs showing the entire update process on your device?
Best Regards,
Jeremias