Merge pull request #4 from JustFiesta/jenkins-assesment

Jenkins assesment
This commit is contained in:
Matthew 2024-05-18 10:08:42 +02:00 committed by GitHub
commit 242d94717c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 33 additions and 86 deletions

31
Jenkinsfile vendored
View file

@ -1,9 +1,11 @@
// Merge request pipeline
pipeline {
agent any
environment {
NEXUS_CREDS = credentials('nexus-cred')
NEXUS_DOCKER_REPO_MR = '34.241.46.54:8085'
NEXUS_DOCKER_REPO_MR = '34.245.131.115:8085'
NEXUS_DOCKER_REPO_MAIN = '34.245.131.115:8084'
}
tools {
@ -11,6 +13,7 @@ pipeline {
}
stages {
// Merge request pipeline
stage('Checkstyle') {
steps{
echo 'Running gradle checkstyle'
@ -53,28 +56,12 @@ pipeline {
}
stage('Docker Push (MR)') {
steps {
echo 'Pushing Image to docker hub'
echo 'Pushing Image to docker repo'
sh 'docker push $NEXUS_DOCKER_REPO_MR/spring-petclinic:${GIT_COMMIT}'
}
}
}
post {
always {
cleanWs()
}
}
}
// Main branch pipeline
pipeline {
agent any
environment {
NEXUS_CREDS = credentials('nexus-cred')
NEXUS_DOCKER_REPO_MAIN = '34.241.46.54:8084'
}
// Main branch pipeline
stage('Docker Build (Main)') {
when {
branch 'main'
@ -102,11 +89,11 @@ pipeline {
branch 'main'
}
steps {
echo 'Pushing Image to docker hub'
echo 'Pushing Image to docker repo'
sh 'docker push $NEXUS_DOCKER_REPO_MAIN/spring-petclinic:${GIT_COMMIT}'
}
}
}
post {
always {
cleanWs()

View file

@ -1,40 +0,0 @@
jenkins assesment:
3 kontenery na EC2 -> jenkins-docker, jenkins-blueocean, nexus
!!! Pobranie klucza do EC2 !!!
EC2 - security groups + t6 type:
ssh -i C:\lokalizacja_klucza\jenkins-assesement-ec2.pem ec2-user@ec2-3-252-205-41.eu-west-1.compute.amazonaws.com
Po uruchomieniu EC2:
docker start nexus
docker start jenkins-blueocean
docker run \/
!!!!!!!! zmieniaj IP w env w JenkinsFile (GitHub), daemon.json (EC2), docker:dind dodaj --insecure-registries !!!!!!!!!!!!
----------------------------
W jenkinsie:
add creds - github, nexus
!!! create github token !!!
----------------------------
Serwer Jenkinsa na EC2:
Nexus:
sudo docker run -d -p 8081-8085:8081-8085 --name nexus -v nexus-data:/nexus-data sonatype/nexus3
Jenkins Docker:
sudo docker run --name jenkins-docker --rm --detach --privileged --network jenkins --network-alias docker --env DOCKER_TLS_CERTDIR=/certs --volume jenkins-docker-certs:/certs/client --volume jenkins-data:/var/jenkins_home --publish 2376:2376 docker:dind --insecure-registry 54.195.172.42:8085 --insecure-registry 54.195.172.42:8084 --storage-driver overlay2
Jenkins Blueocean:
dockerfile z dokumentacji jenkinsa + run blueocean
https://www.jenkins.io/doc/book/installing/docker/