Сбой docker compose на этапе сборки gitlab-ci

Я пытаюсь собрать gitlab-ci, но на одном из этапов сборка не получается. Я застреваю на этапе сборки. Он не распознает python, а я пытаюсь установить его, чтобы собрать образ и протестировать его с помощью robot framework

gitlab-ci.yaml

Выдает ошибку /bin/sh: eval: line 153: apt-get: not found

.

Как сказал @slauth в своем комментарии, образ docker/compose основан на Alpine Linux, который использует менеджер пакетов apk, а не apt. Однако, скорее всего, вы не сможете использовать образ debian, поскольку вам нужна функциональность docker/compose. В этом случае вы можете использовать apk для установки python вместо apt-get, точно так же, как вы устанавливаете bash в разделе script этой работы: apk add --update --no-cache python3 && ln -sf python3 /usr/bin/python (Это взято из соответствующего ответа здесь ).

Однако установка и обновление пакетов в конвейере CI/CD, как правило, является плохой практикой, поскольку в зависимости от количества запущенных вами конвейеров это может значительно замедлить процесс разработки. Вместо этого вы можете создавать собственные образы docker на основе того образа, который вам нужен, и устанавливать туда свои пакеты. Например, вы можете создать новый образ на основе docker/composer, установить туда python, bash и т.д. Затем разместите новый образ либо в Docker Hub, либо во встроенном в Gitlab реестре докеров, либо в другом доступном вам реестре. Наконец, в вашем файле .gitlab-ci.yml вы просто измените docker/compose на ваш новый образ.

Для получения дополнительной информации по этой части, вы можете посмотреть другой ответ, который я написал на аналогичный вопрос здесь.

Вернуться на верх