How to enable APK caching: Difference between revisions

From Alpine Linux
m (Use Cmd template)
m (Clarify that console OR ACF, not both)
Line 13: Line 13:
{{Using_Internet_Repositories_for_apk-tools}}
{{Using_Internet_Repositories_for_apk-tools}}


=== Enable caching from the console ===
== Enable caching from either console or ACF ==
 
Choose one of the two methods below to enable, either from the console or from the ACF web interface.
 
=== Option 1: Enable caching from the console ===


''Substitute 'sda1' in the example below for the actual device you will use to store the caching directory.''
''Substitute 'sda1' in the example below for the actual device you will use to store the caching directory.''
Line 24: Line 28:
ln –s /media/sda1/cache /etc/apk/cache}}
ln –s /media/sda1/cache /etc/apk/cache}}


=== From the ACF ===
=== Option 2: From the ACF ===


Browse to '''System > Packages > Cache'''
Browse to '''System > Packages > Cache'''

Revision as of 08:17, 4 January 2011


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

/media/cdrom/apks http://dl-3.alpinelinux.org/alpine/v3.3/main

To upgrade, in this example, from version 3.3 to 3.19, simply change:

http://dl-3.alpinelinux.org/alpine/v3.3/main

to

http://dl-3.alpinelinux.org/alpine/v3.19/main

So that the file will look like this:

Contents of /etc/apk/repositories

/media/cdrom/apks http://dl-3.alpinelinux.org/alpine/v3.19/main
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: http://dl-3.alpinelinux.org/alpine/v3.19/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

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 either console or ACF

Choose one of the two methods below to enable, either from the console or from the ACF web interface.

Option 1: 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

Option 2: 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