Jenkins - Docker
This commit is contained in:
parent
f8cd8ee776
commit
27d086843f
|
@ -0,0 +1,68 @@
|
|||
#!groovy
|
||||
|
||||
def image;
|
||||
def branchName = "${env.BRANCH_NAME}";
|
||||
def branchNameTest = "preprod";
|
||||
def branchNameProd = "master";
|
||||
def prefixDocker = "test";
|
||||
def dockerNginxName = "nginx";
|
||||
def dockerAuthName = "auth";
|
||||
def dockerSalixName = "salix"
|
||||
def dockerClientName = "client"
|
||||
def buildNumber = "${env.BUILD_NUMBER}";
|
||||
String[] dockers = [dockerNginxName, dockerAuthName, dockerSalixName, dockerClientName];
|
||||
|
||||
node {
|
||||
|
||||
if (branchName == branchNameProd)
|
||||
prefixDocker = "prod";
|
||||
|
||||
stage ('Checkout') {
|
||||
checkout scm
|
||||
}
|
||||
|
||||
stage ('build Project Salix'){
|
||||
sh "gulp build"
|
||||
}
|
||||
|
||||
for (int i = 0; i < dockers.size(); i++)
|
||||
{
|
||||
def element = dockers[i];
|
||||
stage ("docker ${element}")
|
||||
{
|
||||
stage ("Stopping ${prefixDocker}-${element} actual")
|
||||
{
|
||||
try
|
||||
{
|
||||
def returnDocker = sh (script: "docker stop ${prefixDocker}-${element}", returnStdout: true).trim();
|
||||
echo "${returnDocker}";
|
||||
returnDocker = sh (script: "docker rm ${prefixDocker}-${element}", returnStdout: true).trim();
|
||||
echo "${returnDocker}";
|
||||
returnDocker = sh (script: "docker -force rmi ${prefixDocker}-${element}:${buildNumber-1}", returnStdout: true).trim();
|
||||
echo "${returnDocker}";
|
||||
}catch(Exception _){
|
||||
echo "Error Stage Stopping"
|
||||
}
|
||||
}
|
||||
stage ("Create Docker Image ${element}") {
|
||||
dir("./services/${element}"){
|
||||
stage ("Install modules service ${element}"){
|
||||
if (fileExists('./package.json'))
|
||||
sh "npm i"
|
||||
}
|
||||
stage("Build image ${element}"){
|
||||
image = docker.build("${prefixDocker}-${element}:${buildNumber}", ".")
|
||||
}
|
||||
}
|
||||
}
|
||||
stage ("Run Docker ${element}"){
|
||||
image.run ("--name ${prefixDocker}-${element}")
|
||||
}
|
||||
/*
|
||||
stage('docker registry'){
|
||||
docker.withServer('tcp://harbor.verdnatura.es','docker-registry')
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
}
|
|
@ -7,3 +7,5 @@ WORKDIR /app
|
|||
RUN npm install
|
||||
|
||||
CMD ["npm", "start"]
|
||||
|
||||
EXPOSE 3000:3000
|
||||
|
|
|
@ -7,3 +7,5 @@ WORKDIR /app
|
|||
RUN npm install
|
||||
|
||||
CMD ["npm", "start"]
|
||||
|
||||
EXPOSE 3002:3002
|
|
@ -6,4 +6,6 @@ RUN rm /etc/nginx/conf.d/default.conf
|
|||
|
||||
COPY conf-prod.conf /etc/nginx/nginx.conf
|
||||
|
||||
COPY build /etc/nginx
|
||||
COPY static /usr/share/nginx/html
|
||||
|
||||
EXPOSE 80:8080
|
|
@ -7,3 +7,5 @@ WORKDIR /app
|
|||
RUN npm install
|
||||
|
||||
CMD ["npm", "start"]
|
||||
|
||||
EXPOSE 3001:3001
|
Loading…
Reference in New Issue