Построение образа Docker из Dockerfile с ошибкой "Docker build" требует ровно 1 аргумента " - PullRequest
0 голосов
/ 28 мая 2019

Я пытаюсь создать образ Docker с помощью конвейерного скрипта Jenkins. Когда я запускаю следующий код,

docker build -f Dockerfile -t spacestudykubernetes /var/lib/jenkins/workspace/cicd/pipeline

Я добавил эту команду в сценарий оболочки работы конвейера Jenkins. Там команда "cd" не будет работать. Смена каталога не работает в сценарии оболочки. Из-за этого без непосредственного изменения я дал команду с полным путем. По вашей команде это будет работать (после внесения изменений в каталог). Я пытаюсь выполнить из папки cicd, а не из папки конвейера. Dockerfile находится в папке конвейера.

Мой конвейерный сценарий Jenkins

pipeline 
{
    agent any
    stages 
        {
            stage ('imagebuild')
                {
                    steps
                        {

sh 'docker build -f Dockerfile -t spacestudykubernetes /var/lib/jenkins/workspace/cicd/pipeline'

                        }
                }
        }
}

Error

Я получаю сообщение об ошибке, подобное следующему,

unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /var/lib/jenkins/workspace/cicd/Dockerfile: no such file or directory

Я не работаю из прямой папки, в которой находится Dockerfile. Мой Dockerfile находится в папке pipe . Это мой код проверен из SVN. И я пытаюсь запустить эту команду из папки cicd . И я дал полный путь с аргументом -f.

1 Ответ

3 голосов
/ 28 мая 2019

Вы пропустите контекстный каталог в конце командной строки.Обычно это просто ..Этот каталог будет служить корневым для всех путей в Dockerfile всякий раз, когда вы используете ADD/COPY, а также в качестве контекста сборки - это означает, что его содержимое будет сжато и передано демону docker при выполнении сборки.

cd /var/lib/jenkins/workspace/cicd/pipeline
docker build -f Dockerfile -t spacestudykubernetes .
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...