Как перенести образ докера в репозиторий Nexus через Jenkinsfile? - PullRequest
0 голосов
/ 02 октября 2019

У меня есть конвейер Jenkinsfile, создающий 3 образа / контейнера докеров, как показано ниже:

stage('Build images')
{
    echo "workspace directory is ${workspace}"
    dir ("$workspace/build/virtuoso")
    {
      sh 'docker build -t virtuoso -f $WORKSPACE/build/virtuoso/Dockerfile .'
    }
    dir ("$workspace/build/wildfly")
    {
      sh 'docker build -t wildfly -f $WORKSPACE/build/wildfly/Dockerfile .'
    }
    dir ("$workspace/build/postgres")
    {
      sh 'docker build -t postgres -f $WORKSPACE/build/postgres/Dockerfile .'
    }
}

Мне нужно отправить эти 3 изображения в менеджер репозитория Nexus. Может ли кто-нибудь помочь мне в этом?

1 Ответ

0 голосов
/ 21 октября 2019

Решение этой проблемы:

stage('Push Docker Images to Nexus Registry'){
sh 'docker login -u user -p password NexusDockerRegistryUrl'
sh 'docker push NexusDockerRegistryUrl/Imagename}'
sh 'docker rmi $(docker images --filter=reference="NexusDockerRegistryUrl/ImageName*" -q)'
sh 'docker logout NexusDockerRegistryUrl'
}

Вышеуказанный этап в конвейере Jenkins перенес бы образ docekr в реестр докеров Nexus и удалил существующий образ.

Спасибо

...