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 file references the Alpine CD, so that if a 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
To upgrade, in this example, 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
So that the file will look like this:
Contents of /etc/apk/repositories
http://dl-3.alpinelinux.org/alpine/v3.3/community
Above, only one possible repository is shown, however, http://dl-3.alpinelinux.org/alpine/
may also be replaced with any geographically close mirror from:
http://rsync.alpinelinux.org/alpine/MIRRORS.txt
Updating package lists
With the correct repositories file in place, the latest index list of available packages can be obtained with:
apk update
--update-cache
or -U
to another apk command, as in apk add -U ...
or apk upgrade -U
, has the same effect as always running apk update
immediately before the other apk command. Instead of auto-update it only if the index has not been updated recently.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