How to enable APK caching
Enabling Package Caching
Package caching is useful when the need arises to upgrade packages on read-only media. Package caching allows you to store newer packages in a location on writable media, which Alpine checks for when loading packages on start-up.
This can be enabled either from the console or through the ACF.
Edit the /etc/apk/repositories file using an editor (nano for instance) and if necessary, add references to the Alpine package repositories. In the example below, the reference to the Alpine CD is maintained, so that if the requested package is available on the local media, it will be obtained from there instead of being downloaded from the remote repository:
Contents of /etc/apk/repositories
Another example: upgrading from version 3.3 to 3.4 simply change:
http://dl-3.alpinelinux.org/alpine/v3.3/main
to
http://dl-3.alpinelinux.org/alpine/v3.4/main
Thus, the file will now look like this:
Contents of /etc/apk/repositories
http://dl-3.alpinelinux.org/alpine/v3.3/community
Only one repository is shown above; however, you may also replace http://dl-3.alpinelinux.org/alpine/
with any of the mirrors from:
http://rsync.alpinelinux.org/alpine/MIRRORS.txt
After updating the repositories file, obtain the latest index of available packages:
apk update
-U
/--update-cache
to another apk command, as in apk add -U ...
or apk upgrade -U
, has the same effect as running apk update
before the other apk command.Enable caching from the console
Substitute 'sda1' in the example below for the actual device you will use to store the caching directory.
First upgrade apk-tools:
apk add –u apk-tools
Now enable package caching:
mkdir –p /media/sda1/cache ln –s /media/sda1/cache /etc/apk/cache
From the ACF
Browse to System > Packages > Cache
Edit Cache Settings:
Tick Enable Cache
Specify the Cache Directory, for example:
/media/sda1/cache
Click Save