Я хочу запускать команды amazon linux как часть конвейера gitlab.
Итак, пытаясь использовать образ докера в качестве бегуна, амазонлинукс: последний
Итак, подключился к док-контейнеру и выполнил команду ниже.
yum -yq установить aws-cli
Он установил aws-cli
Затем настроил aws cli.
aws настроить установить регион $AWS_REGION
aws настроить набор aws_access_key_id $AWS_ACCESS_KEY
aws настроить набор aws_secret_access_key $AWS_SECRET_KEY
aws настроить набор plugins.bolt awscli-plugin-bolt
Затем запустил команду ниже, чтобы проверить личность, но получил ошибку, так как aws-cli-plugin-bolt не существует.
aws sts получить идентификатор вызывающего абонента
Затем запустил установку python pip для того же и получил ошибку устаревания python 2.7, а модуль не найден.
pip установить awscli-plugin-bolt
УСТАРЕВАНИЕ: Python 2.7 подошел к концу 1 января 2020 года. Пожалуйста, обновите свой Python, так как Python 2.7 больше не поддерживается. В pip 21.0 прекратится поддержка Python 2.7 в январе 2021 года. Более подробную информацию о поддержке Python 2 в pip можно найти по адресу https://pip.pypa.io/en/latest/development/release-process/#python-2-support.
ПРЕДУПРЕЖДЕНИЕ. Запускать pip install с привилегиями root, как правило, не рекомендуется. Вместо этого попробуйте `pip install --user`.
ОШИБКА: не удалось найти версию, удовлетворяющую требованию awscli-plugin-bolt (из версий: нет)
ОШИБКА: для awscli-plugin-bolt не найдено подходящего дистрибутива
Поэтому изменили python на python 3 в качестве версии по умолчанию, используя приведенные ниже команды и ссылку. страница.
amazon-linux-extras включает python3.8
ням установить python3.8
альтернативы обновления --install /usr/bin/python python /usr/bin/python3.8 1
А затем установил заглушку болта с помощью pip3.
ням установить python3-пип
pip3 установить awscli-plugin-bolt
Но, тем не менее, команда ниже все еще ищет python 2 и терпит неудачу.
aws sts получить идентификатор вызывающего абонента
Итак, удалил этот контейнер и создал новый, и в качестве первого шага изменил версию Python 3 по умолчанию.
Но на этот раз установка yum самого aws-cli не удалась.
bash-4.2# yum -yq установить aws-cli
Файл "/usr/bin/yum", строка 30
кроме KeyboardInterrupt, e:
^
SyntaxError: неверный синтаксис
Пожалуйста, предложите, как получить доступ к командам aws cli из образа докера amazonlinux.
Кажется, это работает, если я изменю изображение на
изображение:
имя: амазонка/авс-кли
точка входа: [""]
Так что не нужно устанавливать aws cli самостоятельно.
Но по умолчанию он поставляется с 3.7, как изменить это как часть изображения.
И главный вопрос, в gitlab выше изображение работает, с запуском докера я не смог использовать изображение напрямую. Только отдельные команды aws он принимает и сразу закрывает контейнер