Как создать образ Dind Docker с помощью Azure-Cli на Alpine Linux?
Я пытаюсь установить Azure-Cli в dind:latest
изображение на основе альпийского.
Для контекста я хочу использовать его для подключения к AKS и развертывания приложения в Kubernetes через Gitlab.
В моем gitlab-ci.yml
файл, который я начинаю с этого
image: docker:latest
services:
- docker:dind
а потом пытаюсь установить лазурь-кли
deploy-to-k8s--dev: # k8s namespace "dev"
stage: deploy-to-k8s
# image: microsoft/azure-cli
script:
# I need the azure cli in the dind:latest container
# so install bash,curl and finally the cli
- apk update
- apk upgrade
- apk add bash
- apk add --no-cache curl
- curl -L https://aka.ms/InstallAzureCli | bash
- az
и я получаю следующую ошибку
$ curl -L https://aka.ms/InstallAzureCli | bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 167 100 167 0 0 167 0 0:00:01 --:--:-- 0:00:01 644
100 1367 100 1367 0 0 1367 0 0:00:01 --:--:-- 0:00:01 1367
mktemp: Invalid argument
ERROR: Job failed: error executing remote command: command terminated with non-zero exit code: Error executing in Docker Container: 1
Это первый раз, когда я пытаюсь работать с Alpine Linux, и я понятия не имею, как он построен и какие инструменты он использует...
У кого-нибудь есть предложения?
РЕДАКТИРОВАТЬ
на основании принятого ответа это окончательный код, который работает
deploy-to-k8s--dev: # k8s namespace "dev"
stage: deploy-to-k8s
script:
# I need the azure cli in the dind:latest container
# so install bash,curl and finally the cli
- apk update
- apk upgrade
- apk add bash make py-pip
- apk add --virtual=build gcc libffi-dev musl-dev openssl-dev python2-dev
- pip install azure-cli
- apk del --purge build
- az -h
2 ответа
Это помогло мне в моем альпийском образе
apk update, apk add bash py-pip, apk add --virtual=build gcc libffi-dev musl-dev openssl-dev python- dev, установка pip azure-cli, apk del --purge build
Соответствующая более новая версия /questions/5121892/kak-sozdat-obraz-dind-docker-s-pomoschyu-azure-cli-na-alpine-linux/5121903#5121903:
apk add --no-cache --update python3 py3-pip
apk add --no-cache --update --virtual=build gcc musl-dev python3-dev libffi-dev openssl-dev cargo make
pip3 install --no-cache-dir --prefer-binary azure-cli==${AZURE_CLI_VERSION}
apk del build
* Удалите AZURE_CLI_VERSION, если вам нужна последняя версия.