Я пытаюсь создать образец конвейера (используя декларативный), который создает/тестирует/и развертывает образец (узел) приложения.
Я использую agent docker
, который запускает задание в контейнере... этапы конфигурации и тестирования работают нормально:
pipeline {
agent {
docker { image 'node:latest' }
}
stages {
stage('config') {
steps {
sh 'npm install'
}
}
stage('run test') {
steps {
sh 'npm test'
}
}
}
проблема заключается в том, как добавить этап deployment
, который по существу создает образ докера и запускает его следующим образом:
docker build -t myapp .
docker run -d myapp
(давайте предположим, что именно так я хочу развернуть/запустить приложение... и иметь Dockerfile)
проблема в том, как развернуть пример приложения (используйте команды докера)... добавление здесь этапа deploy
не сработает, так как я использую docker agent
(думаю, он запускает докер внутри докера, что звучит неправильно!)
Должен ли я запускать новое задание - после успешного выполнения конвейера - которое использует agent any
, который запускает команды развертывания? или есть лучший способ запустить приложение?