Как я могу получить /etc/profile
для автоматического запуска при запуске контейнера Alpine Docker в интерактивном режиме? Я добавил некоторые псевдонимы в файл aliases.sh
и поместил его в /etc/profile.d
, но когда я запускаю контейнер с помощью docker run -it [my_container] sh
, мои псевдонимы неактивны. Я должен вручную вводить . /etc/profile
из командной строки каждый раз.Как получить/etc/profile для автоматического запуска в Alpine/Docker
Есть ли какая-то другая конфигурация, необходимая для получения /etc/profile
для запуска при авторизации? У меня также были проблемы с использованием файла ~/.profile
. Любое понимание оценено!
EDIT:
На основании ответа VonC, я вытащил и побежал его пример ruby
контейнер. Вот что я получил:
$ docker run --rm --name ruby -it codeclimate/alpine-ruby:b42
/# more /etc/profile.d/rubygems.sh
export PATH=$PATH:/usr/lib/ruby/gems/2.0.0/bin
/# env
no_proxy=*.local, 169.254/16
HOSTNAME=6c7e93ebc5a1
SHLVL=1
HOME=/root
TERM=xterm
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/
/# exit
Хотя файл /etc/profile.d/rubygems.sh
существует, он не был запущен, когда я войти в систему и мой PATH
переменная не обновляется. Я использую неправильную команду docker run
? Что-то еще отсутствует? Кто-нибудь получил ~/.profile
или /etc/profile.d/
файлов для работы с Alpine на Docker? Благодаря!
Пробовали ли вы построить альпийские изображения с 'ADD .profile/и т.д./.profile'? –
Нет, я никогда не слышал о попытке использовать '/ etc/.profile'. Я всегда считал, что '.profile' принадлежит вашему каталогу' HOME', тогда как 'profile' (no dot) принадлежит'/etc'. –