How to enable APK caching

From Alpine Linux
Revision as of 05:18, 14 April 2010 by K0gen (talk | contribs) (added Note and Tip template)

Enabling Package Caching

Note: This document applies to Alpine 1.9 and later versions only

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.

Tip: For package upgrades, it is useful to point Alpine Package Manager to repositories on the internet, to easily obtain package upgrades when they become available.

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:


So that the file will look like this:

Contents of /etc/apk/repositories

Note: Starting with version 3.3, there is a new repository called community. Many packages have been moved from the main repository to the community repository to indicate that they are not guaranteed to be supported beyond six months. If you are using any of these packages, be sure to add the community repository. For example:

Above, only one possible repository is shown, however, may also be replaced with any geographically close mirror from:

Updating package lists

With the correct repositories file in place, the latest index list of available packages can be obtained with:

apk update

Tip: Adding the --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:


Click Save