Browse Source

updated jenkinsfile

master
lenape 3 months ago
parent
commit
9d94c692ee
  1. 35
      Jenkinsfile

35
Jenkinsfile vendored

@ -1,12 +1,16 @@
pipeline {
agent any
agent {
docker {
image 'docker:latest'
args '-v /var/run/docker.sock:/var/run/docker.sock'
}
}
stages {
stage('Build Docker Image') {
steps {
script {
def imageName = "python-jenkins-project:${BUILD_NUMBER}"
sh "DOCKER_BUILDKIT=0 docker build --no-cache -t ${imageName} ."
docker.build(imageName, '.')
env.IMAGE_NAME = imageName
}
}
@ -14,18 +18,35 @@ pipeline {
stage('Deploy Docker Container') {
steps {
script {
sh "docker stop python-jenkins-container || true"
sh "docker rm python-jenkins-container || true"
sh "docker run -d -p 5555:80 --name python-jenkins-container ${env.IMAGE_NAME}"
sh """
docker stop python-jenkins-container || true
docker rm python-jenkins-container || true
docker run -d -p 5555:80 --name python-jenkins-container ${env.IMAGE_NAME}
"""
}
}
}
stage('Verify Deployment') {
steps {
script {
sh "curl http://38.110.1.139:5555"
retry(3) { // Retry up to 3 times
sh """
curl --fail http://38.110.1.139:5555
"""
}
}
}
}
}
post {
always {
script {
sh """
docker network connect host python-jenkins-container
docker exec python-jenkins-container sed -i 's/listen 80 default_server;/listen 80 default_server; server_name python.jacquesingram.online;/' /etc/nginx/conf.d/default.conf
docker exec python-jenkins-container nginx -s reload
"""
}
}
}
}

Loading…
Cancel
Save