У меня есть dockerfile build oel6 linux, который использует SCL python27.
Для сборки докера, используя SHELL
команда работает для правильного выполнения команд (т.е. если бы я вставил RUN python --version
я получаю 2,7).
Создание /root/.bashrc
это устанавливает source scl_source enable python27
отлично работает для любых интерактивных сессий с контейнером (python --version
2.7)
Однако любые команды, выполняемые не интерактивно (т. Е. docker run oel6 pyhton --version
) всегда равен 2,6, что бы я ни пытался.
Возьмите то, что я пробовал с долей скептицизма, так как я, возможно, пробовал это неправильно, но я попытался установить точку входа в качестве команды, я попытался выполнить сценарий, который содержит команды в качестве точки входа, я попытался поставить это в /etc/profile.d/.
Любая помощь приветствуется.
В конце концов я нашел этот сайт: https://austindewey.com/2019/03/26/enables-software-collections-binaries-on-a-docker-image/
У меня был неправильный сценарий точки входа. Что работает:
#!/bin/bash
source scl_source enable python27
exec "$@"