Мы используем альпийское 3,9 docker изображение без Python3. Это список пакетов, которые мы в настоящее время устанавливаем:
apk add --update --no-cache \
bash \
curl \
findutils \
git \
mysql-client \
make \
nmap-ncat \
openssh-client \
openssl \
patch \
procps \
python \
sshpass \
sudo \
jq \
wget
Я сейчас пытаюсь установить конкретную c версию Python3 (3.7.5) из основного репозитория alpine 3.10, используя:
apk add --no-cache python3 --repository http://dl-cdn.alpinelinux.org/alpine/v3.10/main
Тем не менее, это приводит к обновлению других пакетов, которые не являются зависимостями для Python3:
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
(1/5) Upgrading readline (7.0.003-r1 -> 8.0.0-r0)
(2/5) Upgrading bash (4.4.19-r1 -> 5.0.0-r0)
Executing bash-5.0.0-r0.post-upgrade
(3/5) Replacing python2 (2.7.16-r1 -> 2.7.16-r1)
(4/5) Installing xz-libs (5.2.4-r0)
(5/5) Installing python3 (3.7.5-r1)
Executing busybox-1.29.3-r10.trigger
OK: 258 MiB in 91 packages
Почему это происходит?
С другой стороны, если я добавлю помеченное хранилище @future http://dl-cdn.alpinelinux.org/alpine/v3.10/main
в /etc/apk/repositories
и попытаюсь сделать:
apk add python3@future
, я получу следующее:
ERROR: unsatisfiable constraints:
bash-5.0.0-r0:
masked in: @future
satisfies: world[bash]
python2-2.7.16-r1:
masked in: @future
satisfies: world[python]
Что я делаю не так?