Cannot update HA in docker

docker
Tags: #<Tag:0x00007fd07dac0620>

#1

Hi,

I am currently running HA 0.85.0b0 inside a docker container on a raspberry pi 3.
Today I tried to update it using the following command :
sudo docker pull homeassistant/raspberrypi3-homeassistant:latest

After a couple of minutes, I always see the process being stopped with an error on extracting one ‘package’ :
latest: Pulling from homeassistant/raspberrypi3-homeassistant
905674ea9d94: Already exists
d91fe322e169: Already exists
4583de306f0b: Already exists
3c1445e33fed: Already exists
9c6fb5db463f: Already exists
3cf42a2393d6: Already exists
5a5aed61ad4b: Already exists
9e8ecb568364: Already exists
829d1bd86887: Already exists
78470924dcf6: Already exists
d3887b6628cb: Already exists
61ce5ee1cd15: Already exists
bdae6dd69d1b: Already exists
a998d7c2c890: Already exists
18a051161498: Already exists
304256d1e1c0: Already exists
c84e2217dcc8: Already exists
76ddf70a8b12: Already exists
b29d7de1ce35: Already exists
c3eb07b5e161: Extracting [==================================================>] 159.3MB/159.3MB
53cdbda467c6: Download complete
05d83cf37be5: Download complete
33471cc1a86a: Download complete
f5d1f931d4d7: Download complete
f5b6bc90b637: Download complete
failed to register layer: Error processing tar file(exit status 1): open /usr/local/lib/python3.6/site-packages/youtube_dl/extractor/pycache/flipagram.cpython-36.pyc: no space left on device

On other occasion, I have seen these messages :

  • failed to register layer: Error processing tar file(exit status 1): open /usr/local/lib/python3.6/site-packages/xlsxwriter/pycache/styles.cpython-36.pyc: no space left on device
  • could not get decompression stream: fork/exec /usr/bin/unpigz: cannot allocate memory

Has anyone ever seen these types of error while updating a docker container ?


#2

Looks like your SD card is full.
Should be able to confirm with
df -h /


#3

When you update you will need to delete the old docker images or you’ll just end up with a full SD card. You can see by the ‘… already exists’ messages you have a lot of them.


#4

Thanks for the replies.
I forgot to mention that the SD card is not full :
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 15G 9.0G 5.0G 65% /
devtmpfs 466M 0 466M 0% /dev
tmpfs 470M 0 470M 0% /dev/shm
tmpfs 470M 13M 458M 3% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 470M 0 470M 0% /sys/fs/cgroup
/dev/mmcblk0p1 42M 23M 20M 54% /boot

I assumed I could pull the latest image while keeping HA running with the old image and then just do a restart when the new image is ready. Is that not possible ? Do I really have to delete the current image ?


#5

I cleaned old docker images with “docker system prune -a”.
After that, the docker pull command worked fine and I now have 0.86.4 running on my Raspberry Pi.

Thanks for the help.


#6

I am gain seeing the same kind of error while trying to update my docker HA image to 0.88. The difference is that this time the error is consistent and always about decompression stream and unpigz :

latest: Pulling from homeassistant/raspberrypi3-    homeassistant
05276f4299f2: Extracting [==================================================>]  2.541MB/2.541MB
5657e63df536: Download complete 
c44b8ccc8beb: Download complete 
2b71e2231b20: Download complete 
f2f3c158ae06: Download complete 
096cdab9c6d3: Download complete 
5c1fd413eaed: Download complete 
725b37498f24: Download complete 
1b6dd0e0fb27: Download complete 
86cf5d513a1f: Download complete 
9dfa3db29a63: Download complete 
eb4835853691: Download complete 
6beeb2db6ed1: Download complete 
376ec9c92e03: Download complete 
b0e48fb9d4ba: Download complete 
f8a20f066290: Download complete 
a971b6f1809b: Download complete 
ecf1f8794123: Download complete 
3b8c57aa13b3: Download complete 
4950f1422f8c: Download complete 
6d1c6bb6e6ee: Download complete 
d5e01b34057c: Download complete 
79cc1cf596db: Download complete 
b0b4b3f202a4: Download complete 
could not get decompression stream: fork/exec /usr/bin/unpigz: cannot allocate memory

I have tried stopping the container and cleaning with prune -a but it seems to not be enough this time.

Here is my disk space :

Filesystem      Size  Used Avail Use% Mounted on
/dev/root        15G  6.4G  7.6G  46% /
devtmpfs        466M     0  466M   0% /dev
tmpfs           470M     0  470M   0% /dev/shm
tmpfs           470M   42M  428M   9% /run
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           470M     0  470M   0% /sys/fs/cgroup
/dev/mmcblk0p1   42M   23M   20M  54% /boot

#7

Did you expand the file system storage?
If not, that could be the problem. It’s a thing that costs you like 10 seconds to do.