From 0d2536da73b3994fb91f3761c9616df017f7ff1d Mon Sep 17 00:00:00 2001 From: Marco Santos Date: Wed, 27 Nov 2024 12:14:53 +0000 Subject: [PATCH] publicar dockers --- Jenkinsfile | 71 +++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 52 insertions(+), 19 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index f1936c8..67c9aa2 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -12,17 +12,15 @@ pipeline { environment { now = new Date().format('yyyyMMdd-HHmm', TimeZone.getTimeZone('UTC')) - - DOCKER_IMAGE = 'GeradoresWs/api' + DOCKER_HOST = 'tcp://192.168.2.20:2375' + IMAGE_TAG = 'latest' + DOCKER_IMAGE = 'Geradoresfe:lastest' DOCKER_TAG = "${env.BUILD_ID}" DOCKER_REGISTRY = 'Shini89' //'your-docker-registry.com' // Registro Docker - REMOTE_DOCKER_HOST = '192.168.2.20' - REMOTE_DOCKER_USER = 'admin' - REMOTE_DOCKER_PORT = '2375' - REACT_DIR = 'geradoresfe' // Diret�rio do frontend React - SERVICE_DIR = 'GeradoresService' // Diret�rio do projeto DLL - API_DIR = 'GeradoresWS' // Diret�rio do Web API + REACT_DIR = 'geradoresfe' + SERVICE_DIR = 'GeradoresService' + API_DIR = 'GeradoresWS' } stages { @@ -67,13 +65,32 @@ pipeline { } } - stage('Build Frontend') { + stage('Build WS') { + steps { + dir("${env.API_DIR}") { + sh 'dotnet build -c Release' + } + } + } + + stage('Build WS Docker Image') { + steps { + dir("${env.API_DIR}") { + // Construir a imagem Docker do Backend usando o Dockerfile existente + script { + docker.build("${env.API_DIR}:${IMAGE_TAG}", ".") + } + } + } + } + + stage('Build React') { steps { dir("${env.REACT_DIR}") { sh 'npm install' sh 'npm run build' - /* echo 'Building Docker image for React...' + /* sh """ docker build -t ${env.DOCKER_REGISTRY}/react-frontend:latest . docker push ${env.DOCKER_REGISTRY}/react-frontend:latest @@ -82,19 +99,35 @@ pipeline { } } - stage('Build Webservice') { + stage('Build React Docker Image') { steps { - dir("${env.API_DIR}") { - echo 'Building Webservice with ASP.NET Core...' - sh 'dotnet build -c Release' + dir("${env.REACT_DIR}") { + script { + docker.build("${env.REACT_DIR}:${IMAGE_TAG}", ".") + } + } + } + } - /*echo 'Building Docker image for Webservice...' - sh """ - docker build -t ${env.DOCKER_REGISTRY}/webservice:latest . - docker push ${env.DOCKER_REGISTRY}/webservice:latest - """*/ + stage('Push Docker Images') { + steps { + script { + // Fazer login no Docker Hub (ou outro registro Docker) + sh 'docker login -u Shini89 -p Spongebob!1' + + // Publicar as imagens + sh "docker push ${env.API_DIR}:${IMAGE_TAG}" + sh "docker push ${env.REACT_DIR}:${IMAGE_TAG}" } } } } + post { + success { + echo 'Services deployed successfully!' + } + failure { + echo 'Failed to deploy services. Check logs.' + } + } }