I am running a RPI3 on a small SD card 1GB for testing. I got a node container going, but now moving to a python container.
What I found out is the python image, I am assuming using different layers than the resin node test app, is pulling down many new layers causing it run out of disk.
Here is what I am observing:
- Device boots up and immediately starts container
- Device sees a new update and starts downloading new container
- Device runs out of disk and I get this error
Failed to download application 'registry2.resin.io/basestation/c810c66da821b798fe08b26d793e14e1d635eaaf' due to 'failed to register layer: Error processing tar file(exit status 1): write /usr/lib/arm-linux-gnueabihf/libicudata.so.52.1: no space left on device'
- Device cancels and very shortly will try again.
Since this is on a small SD it brings up the question what happens if the device was in the field? Is this something Resin should handle, and if not what do I need to do to dump the old container and free up room, without wiping the SD card?
I saw other related posts such as Downloading fail loop regarding deltas, but a deltas wouldn’t help as we are switching from entirely different images.
Other info that might be helpful:
root@XXXX/# df -h
Filesystem Size Used Avail Use% Mounted on
none 1.1G 1.1G 5.1M 100% /
/dev/mmcblk0p6 1.1G 1.1G 5.1M 100% /data
/dev/mmcblk0p2 295M 240M 36M 88% /lib/modules
tmpfs 487M 0 487M 0% /tmp/resin
shm 64M 0 64M 0% /dev/shm
tmpfs 487M 7.0M 480M 2% /host/run/dbus
none 481M 0 481M 0% /dev
tmpfs 487M 7.4M 479M 2% /run
tmpfs 5.0M 0 5.0M 0% /run/lock