How to check which APT repo is being used
When you have multiple APT repositories configured for the same software, it’s important to know which one is being used. This is especially relevant when you have added a new repository but the system still uses an older one.
Check the Pinned Priority
APT uses the repository with the highest priority. You can check the priority of each repository using the following command:
apt-cache policyIn this example, we will be looking for the docker-ce package (or any Docker-related package) in the output. It will show the repository URL and its priority. For example:
apt-cache policy docker-ceSample output:
docker-ce:
Installed: (none)
Candidate: 5:20.10.24~3-0~ubuntu-jammy
Version table:
5:20.10.24~3-0~ubuntu-jammy 500
500 https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
5:20.10.24~3-0~ubuntu-focal 500
500 https://download.docker.com/linux/ubuntu focal/stable amd64 PackagesThe Candidate version indicates which repository is being used.
Inspect the installed package
If Docker is already installed, you can check the version and match it to the repository:
apt-cache policy docker-ceThe output will show the installed version and the repository it came from.
Manually check the repository
If you want to ensure only one repository is used, you can comment out or remove the unwanted entry in /etc/apt/sources.list.d/download_docker_com_linux_ubuntu.list. For example:
sudo nano /etc/apt/sources.list.d/download_docker_com_linux_ubuntu.listComment out the line for focal if you want to use jammy:
# deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable
deb [arch=amd64] https://download.docker.com/linux/ubuntu jammy stableThen update the package cache:
sudo apt updateVerify the repository again
After making changes, verify the repository being used:
apt-cache policy docker-ceThis will ensure that the correct repository (jammy in this case) is being used.
