SlideShare a Scribd company logo
Final Assignment
Student:
Bibek Lama
Professor:
Thomas Broussard
Course:
Software Industrialization
Software Industrialization 2
1. Installation setup in Virtual
box CentOS
1. Download
1. Download CentOS image file from the link https://wiki.centos.org/Download
2. Download Virtual box from the link https://www.virtualbox.org/wiki/Downloads
2. Create virtual machine
1. Create and add CentOS ISO file in the settings of Virtual machine.
Click New
Software Industrialization 3
2. Enter the name of virtual machine. Ex: CentOS
3. Select the drive where you want to save the virtual machine. Ex:
D:bibekvirtualbox_hardisk or leave it as it is then click next.
4. Allocate the memory size as per your requirements.
Software Industrialization 4
5. Select “Create a virtual hard disk now”.
6. Select “VDI (Virtual box Disk Image)”.
Software Industrialization 5
7. Select “Dynamically allocated”.
8. Allocate size for virtual hard disk as per your requirements.
Software Industrialization 6
9. A new virtual machine will be created which you can see in the left bar of the
virtual box window. (CentOS8).
Software Industrialization 7
3. Configure virtual machine
1. Open settings window
2. Choose storage option
3. Click on Empty
4. Choose downloaded CentOS ISO image from drive
5. Click ok
Click in Start button to start the installation process.
1
2 3
4
5
Software Industrialization 8
6. Choose Network setting
7. Select Bridged Network from selection box
8. Click Ok
6
7
8
Software Industrialization 9
2. Connection between client
and host computer
Download and install WinSCP from the link https://winscp.net/eng/download.php. It is a
FTP Client for windows to transfer files between a local and remote computer.
We also need Putty which is a SSH telnet client by which we can control the host
computer remotely. Putty can be downloaded from the link
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
1. Integrate Putty in WinSCP
1. Open WinSCP application and select options tab.
2. Choose Preferences from the list.
3. Select Integration > Application setting.
4. Browse and add the folder directory where putty.exe is installed and click ok
1
2
Software Industrialization 10
2. Check connection between client and remote computer
1. Open Command prompt in local computer and enter ipconfig get the IP
address.
3
4
Software Industrialization 11
2. Open terminal in host computer in virtual box and enter ifconfig and get the IP
address
3. Ping host computer address from client
Software Industrialization 12
3. Connect host computer from WinSCP
1. Click on new session
2. Click on new site
3. Add host computer IP address
4. Add Username and password
5. Click on save as
1
2
3
4
5
Software Industrialization 13
6. Name the session and click ok.
7. Select the created session and click login
6
7
7
Software Industrialization 14
Now you can have access to the remote computer as shown in figure below.
4. Connect host computer from putty
1. Click in Open session in putty as shown in figure below or (Ctrl + P)
Software Industrialization 15
2. Enter password and hit enter in putty console as shown in figure below.
Software Industrialization 16
3. Install Docker
1. Install Docker using repository
1. Install the yum-utils package (which provides the yum-config-manager utility) and
set up the stable repository.
2. Get root access by entering sudo su –
Software Industrialization 17
3. Enter command yum install –y yum-utils
4. Enter command yum-config-manager 
--add-repo 
https://download.docker.com/linux/centos/docker-ce.repo
to add Docker repository
Software Industrialization 18
5. Enter command yum install docker-ce docker-ce-cli containerd.io to install latest
version of docker-ce. If it does not work, try installing docker-ce with specific
version.
Software Industrialization 19
2. Install specific version of Docker-ce
1. Enter command yum list docker-ce –showduplicates | sort –r to show the
available versions of docker-ce repos and sort according to version in
descending order.
2. Enter command yum install docker-ce-18.09.0-3.el7 docker-ce-cli-18.09.0-3.el7
containerd.io with specific version of docker-ce from the list. Here I choose
3:18.09.0-3.el7 from the list. If still error in installing docker-ce try entering
command yum –y remove podman and enter the command yum install docker-
ce-18.09.0-3.el7 docker-ce-cli-18.09.0-3.el7 containerd.io once again.
Software Industrialization 20
3. Enter systemctl start docker to start Docker and enter docker run hello-world to
check to verify Docker engine installed correctly.
Software Industrialization 21
4. Install Jenkins Docker Image in
Docker container
1. Login as root user and create a directory with name docker.
2. Enter command docker pull Jenkins
Software Industrialization 22
3. Run command docker run -p 8080:8080 -p 50000:50000 –v
jenkins_home:/var/jenkins_home jenkins/jenkins:lts and copy the secret key and
paste somewhere as shown in the figure below which is required while Jenkins run
first time.
4. Run command ifconfig to check new docker container is created or not.
5. Run Jenkins in browser by putting host computer IP address followed by :8080 Ex.
192.168.0.32:8080 in my case.
6. Jenkins request for the secret key, which was saved previously.
Software Industrialization 23
7. Create admin username and password
Software Industrialization 24
8. Now Jenkins is successfully configured and ready to use.
9. Successfully logged in to Jenkins dashboard and ready to build our software
projects.
Software Industrialization 25
5. Install Jenkins with Docker
Compose
Docker compose is a tool to run multi-container Docker applications by defining and
configuring our application’s service in a single YAML file. We can easily create and run
the services in a single command.
1. Run command curl -L
"https://github.com/docker/compose/releases/download/1.26.0/docker-compose-
$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose to install Docker
compose.
2. Apply executable permissions to the binary by running command chmod +x
/usr/local/bin/docker-compose
3. Make a directory and create a docker-compose.yml file. In my case directory is
/Jenkins
4. Open YAML file from WinSCP in an editor to edit file.
Software Industrialization 26
5. Copy the following configuration for Jenkins in YAML file. List of application’s
services should be listed under services as shown below.
6. Change the permission for the folder Jenkins so that every can modify. Command:
chmod –R 777 jenkins
7. Change the security context by running command chcon -Rt svirt_sandbox_file_t
/docker/software-factory/Jenkins
8. Run command docker-compose up Jenkins and Jenkins will start successfully.
Software Industrialization 27
Now the configuration files and folders are created inside /Jenkins folder as shown in
figure below.
Now you can run Jenkins and do all the starting setups gradually as stated in chapter 4
Install Jenkins Docker Image in Docker container above.
Fixing the error: java.net.UnknownHostException:
updates.jenkins.io
1. Opening the bash of the container where we are running the Jenkins service.
Run command docker-compose exec –u0 jenkins bash to execute bash
Software Industrialization 28
Run following commands:
# Masquerading allows for docker ingress and egress (this is the juicy bit)
firewall-cmd --zone=public --add-masquerade --permanent
# Specifically allow incoming traffic on port 80/443 (nothing new here)
firewall-cmd --zone=public --add-port=80/tcp
firewall-cmd --zone=public --add-port=443/tcp
# Reload firewall to apply permanent rules
firewall-cmd –reload
Once all the command runs successfully now we are able to see all the plugins from
online as shown in picture below.
Software Industrialization 29
6. Build Project with Jenkins
1. Installing plugins in Jenkins
1. Click on Manage Jenkins
2. Click on Manage plugins
3. Click on Available tab
4. Type maven in search field
5. Check Maven Integration
6. Click Install without restart
1 2
3
4
5
6
Software Industrialization 30
Installing Maven Integration in Jenkins.
2. Create new project
1. In the Jenkins dashboard, click the New Item menu.
2. Give the name of new project.
3. Select Maven project
4. Click Ok.
2
3
4
Software Industrialization 31
5. Click on tools configuration link
6. New empty project is created.
3. Setup Global tools configuration
1. Click Add Maven button.
5
1
Software Industrialization 32
2. Write the name of Maven
3. Click save button.
4. Follow the steps of installing plugins in Jenkins as mentioned in the above
section to install Git plugin
2
3
Software Industrialization 33
4. Re-Configure Project
1. Open project and click on Configure menu to open project configuration
window.
2. Click on Source code Management tab.
3. Check Git
4. Add project repository link from github.com
5. Add the pom.xml file location
6. Type “install” in Goals and options field
2
3
4
5
7
Software Industrialization 34
7. Click on Build Now menu
7
Software Industrialization 35
7. Nexus
Nexus is a repository manager provided by Sonatype which allows to manage our
dependencies JARs throughout the organization among other developers. It also allows
our build projects to publish artifacts within the company internally. It works like Maven
Repository. We can be able to share our build projects as a component to other projects
as dependency. The following steps I went through to install and run Nexus in my Docker
container.
1. Installing Nexus
1. Go to hub.docker.com and search for “sonatype/nexus” choose the latest
version of sonatype/nexus i.e. sonatype/nexus3.
Software Industrialization 36
2. Add nexus service configuration in docker-compose.yml file
3. Make directory name /nexus in the /docker/software-factory and change the
permission for nexus folder by running command chown –R 200 nexus in the
putty console.
4. Now run the command docker-compose up nexus to run the nexus service.
There is no nexus installed so at first docker-compose will install the
sonatype/nexus3 in the container.
Software Industrialization 37
2. Creating user account in Nexus
1. Login with default username and password given in docker/software-
factory/nexus/admin.password file.
2. Go to setting part and create new local user.
3. Create new nexus roles for user and assign it to the created user.
Software Industrialization 38
4. Updating the maven settings.xml file which is located in docker/software-
factory/jenkins/tools/hudson.tasks.Maven_MavenInstallation/default/conf/settings.
xml
5. Create new server and assign username and password created in nexus.
Software Industrialization 39
8. Adding Sonarqube in
container
1. Open docker-compose.yml file and add sonarqube service in the file
sonarqube:
image: "sonarqube"
ports:
- "9000:9000"
volumes:
- ./sonarqube/data:/opt/sonarqube/data
2. Run command docker-compose up sonarqube to install sonarqube in the container.
Go to host IP address followed by port 9000 to open sonarqube page. Ex:
192.168.0.33:9000
Software Industrialization 40
9. Sonarqube in Jenkins
1. Select the project from Jenkins dashboard and go to configuration page.
Software Industrialization 41
2. Go to build tab and write the command -Dsonar.host.url=http://sonarqube:9000
clean install sonar:sonar
3. Now we can build the project again. This time if the is executed in sonarqube for
testing code with rules provided by sonarqube.
Software Industrialization 42
4. Open sonarqube in the browser with IP address followed by port.
Ex. 192.169.0.33:9000
5. We can see the results in the projects page of sonarqube.
Software Industrialization 43
10. Jenkins with Nexus
1. To deploy the maven project in nexus we write the following command in project
configuration page.
-DaltDeploymentRepository=deploymentRepo::default::http://nexus:8081
repository/maven-snapshots/ clean deploy
Here I insert new command in the above command which is –DskipTests=true –fn
so the full command is -
DaltDeploymentRepository=deploymentRepo::default::http://nexus:8081
repository/maven-snapshots/ –DskipTests=true –fn clean deploy.
It is because there was error in my test case of my project so it was making
difficulty while deploying so I put test-skipping command along with the
deployment command to ignore run tests.
Software Industrialization 44
2. Start Jenkins service and Nexus service.
docker-compose start Jenkins
docker-compose start nexus
I could not run all three services at once because of high consumption of memory,
my PC was not working well. That is way I ran only two services and did little
change in goal options rather than pushing to sonarqube for checking code quality.
I have done in the previous chapter with sonarqube separately.
3. After that when we build project, the project will create the jar file and deploy to
the Nexus repository when the build is success.
After successful deployment, it will be available in nexus repositories.
Software Industrialization 45
11. Gitea Installation
1. Set gitea service setup configuration in docker-compose.yml file.
2. Create service in the docker container by running command docker-compose up
gitea
Software Industrialization 46
The error is due to port mapping because some service is already using port 22 so I have
to change the port to 1022.
Run docker-compose up gitea again.
Software Industrialization 47
Now the gitea will be added in our host machine as shown in figure below:
Software Industrialization 48
Open gitea in browser your host ip address followed by port 3000. Ex 192.168.0.33:3000
Setting configuration for gitea for the first time.
Software Industrialization 49
Administration user setting and install gitea.
Gitea Dashboard page.
Software Industrialization 50
Creating new organization in gitea.
New Organization created.
Software Industrialization 51
Creating new repo as my-repo
Software Industrialization 52
12. Pushing project in gitea
repository
1. Create new maven project in eclipse to push in the gitea repository. I have created
a demo project to push in gitea. i.e. gitea-demo
2. Commit the project and push our project to the gitea repository link.
Right click in project > team > share project
3. Create new repository in the local machine.
Software Industrialization 53
4. Commit project
5. Add gitea repository
Software Industrialization 54
The project is pushed to gitea repository.
Software Industrialization 55
13. Adding gitea as source code
management in Jenkins
1. Create new maven project in Jenkins i.e gitea-project
2. Add the gitea repository link in the source code management field in project
configuration.
Software Industrialization 56
2. Build project in Jenkins
After build success

More Related Content

What's hot

Creating Sentiment Line Chart with Watson
Creating Sentiment Line Chart with Watson Creating Sentiment Line Chart with Watson
Creating Sentiment Line Chart with Watson
Dev_Events
 
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
DataArt
 
Fcm rapid-install-11122-1634210
Fcm rapid-install-11122-1634210Fcm rapid-install-11122-1634210
Fcm rapid-install-11122-1634210
raman pattanaik
 
Oracle Web logic 12c on docker
Oracle Web logic 12c  on dockerOracle Web logic 12c  on docker
Oracle Web logic 12c on docker
K Kumar Guduru
 
SOP - 2013 Server Build
SOP - 2013 Server BuildSOP - 2013 Server Build
SOP - 2013 Server BuildRobert Jones
 
Installing Oracle Endeca Information Discovery 3.0
Installing Oracle  Endeca  Information Discovery 3.0Installing Oracle  Endeca  Information Discovery 3.0
Installing Oracle Endeca Information Discovery 3.0
Ravi Kumar Lanke
 
How to create an identifeye ar game – tech specs
How to create an identifeye ar game – tech specsHow to create an identifeye ar game – tech specs
How to create an identifeye ar game – tech specs
Onno Hansen-Staszyński
 
Oracle vm-installation
Oracle vm-installationOracle vm-installation
Oracle vm-installation
Ravi Kumar Lanke
 
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Goutam Biswas
 
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Goutam Biswas
 
Windows 10 Deployment with Microsoft Deployment Toolkit
Windows 10 Deployment with Microsoft Deployment Toolkit Windows 10 Deployment with Microsoft Deployment Toolkit
Windows 10 Deployment with Microsoft Deployment Toolkit
Roel van Bueren
 
O C S Inventory N G Installation And Administration Guide 1
O C S  Inventory  N G  Installation And  Administration  Guide 1O C S  Inventory  N G  Installation And  Administration  Guide 1
O C S Inventory N G Installation And Administration Guide 1rossodavide
 
web services using java
web services using javaweb services using java
web services using java
Riza Prapascatama Agusdin
 
Install sccm 2007 on windows server 2008 r2 – step by step
Install sccm 2007 on windows server 2008 r2 – step by stepInstall sccm 2007 on windows server 2008 r2 – step by step
Install sccm 2007 on windows server 2008 r2 – step by step
d0wonload
 
Informe winaudit
Informe winauditInforme winaudit
Informe winaudit
Alexita Criollo
 
Changelog
ChangelogChangelog
Changelog
ser asd
 
Newgenlib
NewgenlibNewgenlib
Newgenlib
Shiba Bhue
 
Vsp 40 esxi_i_vc_setup_guide
Vsp 40 esxi_i_vc_setup_guideVsp 40 esxi_i_vc_setup_guide
Vsp 40 esxi_i_vc_setup_guidebisratster
 

What's hot (20)

Spoxamigrate
SpoxamigrateSpoxamigrate
Spoxamigrate
 
Creating Sentiment Line Chart with Watson
Creating Sentiment Line Chart with Watson Creating Sentiment Line Chart with Watson
Creating Sentiment Line Chart with Watson
 
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)"Docker best practice", Станислав Коленкин (senior devops, DataArt)
"Docker best practice", Станислав Коленкин (senior devops, DataArt)
 
Fcm rapid-install-11122-1634210
Fcm rapid-install-11122-1634210Fcm rapid-install-11122-1634210
Fcm rapid-install-11122-1634210
 
Oracle Web logic 12c on docker
Oracle Web logic 12c  on dockerOracle Web logic 12c  on docker
Oracle Web logic 12c on docker
 
SOP - 2013 Server Build
SOP - 2013 Server BuildSOP - 2013 Server Build
SOP - 2013 Server Build
 
Installing Oracle Endeca Information Discovery 3.0
Installing Oracle  Endeca  Information Discovery 3.0Installing Oracle  Endeca  Information Discovery 3.0
Installing Oracle Endeca Information Discovery 3.0
 
How to create an identifeye ar game – tech specs
How to create an identifeye ar game – tech specsHow to create an identifeye ar game – tech specs
How to create an identifeye ar game – tech specs
 
Oracle vm-installation
Oracle vm-installationOracle vm-installation
Oracle vm-installation
 
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
Practical Installation Process Of New Gen Lib Oss On Windows Xp For Library A...
 
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
Installation Process Of New Gen Lib Oss On Windows Xp For Library Automation ...
 
Windows 10 Deployment with Microsoft Deployment Toolkit
Windows 10 Deployment with Microsoft Deployment Toolkit Windows 10 Deployment with Microsoft Deployment Toolkit
Windows 10 Deployment with Microsoft Deployment Toolkit
 
Read me
Read meRead me
Read me
 
O C S Inventory N G Installation And Administration Guide 1
O C S  Inventory  N G  Installation And  Administration  Guide 1O C S  Inventory  N G  Installation And  Administration  Guide 1
O C S Inventory N G Installation And Administration Guide 1
 
web services using java
web services using javaweb services using java
web services using java
 
Install sccm 2007 on windows server 2008 r2 – step by step
Install sccm 2007 on windows server 2008 r2 – step by stepInstall sccm 2007 on windows server 2008 r2 – step by step
Install sccm 2007 on windows server 2008 r2 – step by step
 
Informe winaudit
Informe winauditInforme winaudit
Informe winaudit
 
Changelog
ChangelogChangelog
Changelog
 
Newgenlib
NewgenlibNewgenlib
Newgenlib
 
Vsp 40 esxi_i_vc_setup_guide
Vsp 40 esxi_i_vc_setup_guideVsp 40 esxi_i_vc_setup_guide
Vsp 40 esxi_i_vc_setup_guide
 

Similar to Software industrialization

rgpv 7th sem for it & cs Cloud computing lab record
rgpv 7th sem for it & cs Cloud computing lab recordrgpv 7th sem for it & cs Cloud computing lab record
rgpv 7th sem for it & cs Cloud computing lab recordnaaaaz
 
Backbase CXP Manager Setup
Backbase CXP Manager SetupBackbase CXP Manager Setup
Backbase CXP Manager Setup
Gagan Vishal Mishra
 
Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!
Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!
Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!
Anderson Bassani
 
Installing WordPress on AWS
Installing WordPress on AWSInstalling WordPress on AWS
Installing WordPress on AWS
Manish Jain
 
How to Install and Configure Jenkins on Centos 7
How to Install and Configure Jenkins on Centos 7How to Install and Configure Jenkins on Centos 7
How to Install and Configure Jenkins on Centos 7
AniketGoyal14
 
Setting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntuSetting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntu
kesavan N B
 
Containers Lab
Containers Lab Containers Lab
Containers Lab
Dev_Events
 
Orangescrum In App Chat Add-on User Manual
Orangescrum In App Chat Add-on User ManualOrangescrum In App Chat Add-on User Manual
Orangescrum In App Chat Add-on User Manual
Orangescrum
 
Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!
Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!
Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!
Anderson Bassani
 
BLCN532 Lab 1Set up your development environmentV2.0.docx
BLCN532 Lab 1Set up your development environmentV2.0.docxBLCN532 Lab 1Set up your development environmentV2.0.docx
BLCN532 Lab 1Set up your development environmentV2.0.docx
moirarandell
 
Jenkins Setup Document
Jenkins Setup DocumentJenkins Setup Document
Jenkins Setup Document
mobi fly
 
Build, Deploy and Run Node Js Application on Azure using Docker
Build, Deploy and Run Node Js Application on Azure using DockerBuild, Deploy and Run Node Js Application on Azure using Docker
Build, Deploy and Run Node Js Application on Azure using Docker
Osama Mustafa
 
A Manual for Setting up a WordPress Website on the Local Linux Server with Va...
A Manual for Setting up a WordPress Website on the Local Linux Server with Va...A Manual for Setting up a WordPress Website on the Local Linux Server with Va...
A Manual for Setting up a WordPress Website on the Local Linux Server with Va...
Yuji Shimojo
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
Troublemaker Khunpech
 
Step by step installation of microsoft dynamics 365 finance and operations on...
Step by step installation of microsoft dynamics 365 finance and operations on...Step by step installation of microsoft dynamics 365 finance and operations on...
Step by step installation of microsoft dynamics 365 finance and operations on...
Umesh Pandit
 
Manual 70-410 _Yves
Manual 70-410 _YvesManual 70-410 _Yves
Manual 70-410 _YvesYves Mukusa
 
Lesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment SetupLesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment Setup
University of Catania
 
Capital software installation procedure
Capital software installation procedureCapital software installation procedure
Capital software installation procedure
Somashekar S.M
 

Similar to Software industrialization (20)

rgpv 7th sem for it & cs Cloud computing lab record
rgpv 7th sem for it & cs Cloud computing lab recordrgpv 7th sem for it & cs Cloud computing lab record
rgpv 7th sem for it & cs Cloud computing lab record
 
Backbase CXP Manager Setup
Backbase CXP Manager SetupBackbase CXP Manager Setup
Backbase CXP Manager Setup
 
Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!
Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!
Lab Exercise: IBM Blockchain runs also on LinuxONE, see it in action!
 
Installing WordPress on AWS
Installing WordPress on AWSInstalling WordPress on AWS
Installing WordPress on AWS
 
How to Install and Configure Jenkins on Centos 7
How to Install and Configure Jenkins on Centos 7How to Install and Configure Jenkins on Centos 7
How to Install and Configure Jenkins on Centos 7
 
Setting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntuSetting up the hyperledger composer in ubuntu
Setting up the hyperledger composer in ubuntu
 
DotNetNuke
DotNetNukeDotNetNuke
DotNetNuke
 
Containers Lab
Containers Lab Containers Lab
Containers Lab
 
Orangescrum In App Chat Add-on User Manual
Orangescrum In App Chat Add-on User ManualOrangescrum In App Chat Add-on User Manual
Orangescrum In App Chat Add-on User Manual
 
Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!
Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!
Blockchain - Hyperledger Fabric v1.0 Running on LinuxONE, see it in action!
 
BLCN532 Lab 1Set up your development environmentV2.0.docx
BLCN532 Lab 1Set up your development environmentV2.0.docxBLCN532 Lab 1Set up your development environmentV2.0.docx
BLCN532 Lab 1Set up your development environmentV2.0.docx
 
Jenkins Setup Document
Jenkins Setup DocumentJenkins Setup Document
Jenkins Setup Document
 
CodeShip
CodeShipCodeShip
CodeShip
 
Build, Deploy and Run Node Js Application on Azure using Docker
Build, Deploy and Run Node Js Application on Azure using DockerBuild, Deploy and Run Node Js Application on Azure using Docker
Build, Deploy and Run Node Js Application on Azure using Docker
 
A Manual for Setting up a WordPress Website on the Local Linux Server with Va...
A Manual for Setting up a WordPress Website on the Local Linux Server with Va...A Manual for Setting up a WordPress Website on the Local Linux Server with Va...
A Manual for Setting up a WordPress Website on the Local Linux Server with Va...
 
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day ThailandCI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
CI/CD with Jenkins and Docker - DevOps Meetup Day Thailand
 
Step by step installation of microsoft dynamics 365 finance and operations on...
Step by step installation of microsoft dynamics 365 finance and operations on...Step by step installation of microsoft dynamics 365 finance and operations on...
Step by step installation of microsoft dynamics 365 finance and operations on...
 
Manual 70-410 _Yves
Manual 70-410 _YvesManual 70-410 _Yves
Manual 70-410 _Yves
 
Lesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment SetupLesson 02 - React Native Development Environment Setup
Lesson 02 - React Native Development Environment Setup
 
Capital software installation procedure
Capital software installation procedureCapital software installation procedure
Capital software installation procedure
 

Recently uploaded

Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 

Recently uploaded (20)

Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 

Software industrialization

  • 1. Final Assignment Student: Bibek Lama Professor: Thomas Broussard Course: Software Industrialization
  • 2. Software Industrialization 2 1. Installation setup in Virtual box CentOS 1. Download 1. Download CentOS image file from the link https://wiki.centos.org/Download 2. Download Virtual box from the link https://www.virtualbox.org/wiki/Downloads 2. Create virtual machine 1. Create and add CentOS ISO file in the settings of Virtual machine. Click New
  • 3. Software Industrialization 3 2. Enter the name of virtual machine. Ex: CentOS 3. Select the drive where you want to save the virtual machine. Ex: D:bibekvirtualbox_hardisk or leave it as it is then click next. 4. Allocate the memory size as per your requirements.
  • 4. Software Industrialization 4 5. Select “Create a virtual hard disk now”. 6. Select “VDI (Virtual box Disk Image)”.
  • 5. Software Industrialization 5 7. Select “Dynamically allocated”. 8. Allocate size for virtual hard disk as per your requirements.
  • 6. Software Industrialization 6 9. A new virtual machine will be created which you can see in the left bar of the virtual box window. (CentOS8).
  • 7. Software Industrialization 7 3. Configure virtual machine 1. Open settings window 2. Choose storage option 3. Click on Empty 4. Choose downloaded CentOS ISO image from drive 5. Click ok Click in Start button to start the installation process. 1 2 3 4 5
  • 8. Software Industrialization 8 6. Choose Network setting 7. Select Bridged Network from selection box 8. Click Ok 6 7 8
  • 9. Software Industrialization 9 2. Connection between client and host computer Download and install WinSCP from the link https://winscp.net/eng/download.php. It is a FTP Client for windows to transfer files between a local and remote computer. We also need Putty which is a SSH telnet client by which we can control the host computer remotely. Putty can be downloaded from the link https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 1. Integrate Putty in WinSCP 1. Open WinSCP application and select options tab. 2. Choose Preferences from the list. 3. Select Integration > Application setting. 4. Browse and add the folder directory where putty.exe is installed and click ok 1 2
  • 10. Software Industrialization 10 2. Check connection between client and remote computer 1. Open Command prompt in local computer and enter ipconfig get the IP address. 3 4
  • 11. Software Industrialization 11 2. Open terminal in host computer in virtual box and enter ifconfig and get the IP address 3. Ping host computer address from client
  • 12. Software Industrialization 12 3. Connect host computer from WinSCP 1. Click on new session 2. Click on new site 3. Add host computer IP address 4. Add Username and password 5. Click on save as 1 2 3 4 5
  • 13. Software Industrialization 13 6. Name the session and click ok. 7. Select the created session and click login 6 7 7
  • 14. Software Industrialization 14 Now you can have access to the remote computer as shown in figure below. 4. Connect host computer from putty 1. Click in Open session in putty as shown in figure below or (Ctrl + P)
  • 15. Software Industrialization 15 2. Enter password and hit enter in putty console as shown in figure below.
  • 16. Software Industrialization 16 3. Install Docker 1. Install Docker using repository 1. Install the yum-utils package (which provides the yum-config-manager utility) and set up the stable repository. 2. Get root access by entering sudo su –
  • 17. Software Industrialization 17 3. Enter command yum install –y yum-utils 4. Enter command yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo to add Docker repository
  • 18. Software Industrialization 18 5. Enter command yum install docker-ce docker-ce-cli containerd.io to install latest version of docker-ce. If it does not work, try installing docker-ce with specific version.
  • 19. Software Industrialization 19 2. Install specific version of Docker-ce 1. Enter command yum list docker-ce –showduplicates | sort –r to show the available versions of docker-ce repos and sort according to version in descending order. 2. Enter command yum install docker-ce-18.09.0-3.el7 docker-ce-cli-18.09.0-3.el7 containerd.io with specific version of docker-ce from the list. Here I choose 3:18.09.0-3.el7 from the list. If still error in installing docker-ce try entering command yum –y remove podman and enter the command yum install docker- ce-18.09.0-3.el7 docker-ce-cli-18.09.0-3.el7 containerd.io once again.
  • 20. Software Industrialization 20 3. Enter systemctl start docker to start Docker and enter docker run hello-world to check to verify Docker engine installed correctly.
  • 21. Software Industrialization 21 4. Install Jenkins Docker Image in Docker container 1. Login as root user and create a directory with name docker. 2. Enter command docker pull Jenkins
  • 22. Software Industrialization 22 3. Run command docker run -p 8080:8080 -p 50000:50000 –v jenkins_home:/var/jenkins_home jenkins/jenkins:lts and copy the secret key and paste somewhere as shown in the figure below which is required while Jenkins run first time. 4. Run command ifconfig to check new docker container is created or not. 5. Run Jenkins in browser by putting host computer IP address followed by :8080 Ex. 192.168.0.32:8080 in my case. 6. Jenkins request for the secret key, which was saved previously.
  • 23. Software Industrialization 23 7. Create admin username and password
  • 24. Software Industrialization 24 8. Now Jenkins is successfully configured and ready to use. 9. Successfully logged in to Jenkins dashboard and ready to build our software projects.
  • 25. Software Industrialization 25 5. Install Jenkins with Docker Compose Docker compose is a tool to run multi-container Docker applications by defining and configuring our application’s service in a single YAML file. We can easily create and run the services in a single command. 1. Run command curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose- $(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose to install Docker compose. 2. Apply executable permissions to the binary by running command chmod +x /usr/local/bin/docker-compose 3. Make a directory and create a docker-compose.yml file. In my case directory is /Jenkins 4. Open YAML file from WinSCP in an editor to edit file.
  • 26. Software Industrialization 26 5. Copy the following configuration for Jenkins in YAML file. List of application’s services should be listed under services as shown below. 6. Change the permission for the folder Jenkins so that every can modify. Command: chmod –R 777 jenkins 7. Change the security context by running command chcon -Rt svirt_sandbox_file_t /docker/software-factory/Jenkins 8. Run command docker-compose up Jenkins and Jenkins will start successfully.
  • 27. Software Industrialization 27 Now the configuration files and folders are created inside /Jenkins folder as shown in figure below. Now you can run Jenkins and do all the starting setups gradually as stated in chapter 4 Install Jenkins Docker Image in Docker container above. Fixing the error: java.net.UnknownHostException: updates.jenkins.io 1. Opening the bash of the container where we are running the Jenkins service. Run command docker-compose exec –u0 jenkins bash to execute bash
  • 28. Software Industrialization 28 Run following commands: # Masquerading allows for docker ingress and egress (this is the juicy bit) firewall-cmd --zone=public --add-masquerade --permanent # Specifically allow incoming traffic on port 80/443 (nothing new here) firewall-cmd --zone=public --add-port=80/tcp firewall-cmd --zone=public --add-port=443/tcp # Reload firewall to apply permanent rules firewall-cmd –reload Once all the command runs successfully now we are able to see all the plugins from online as shown in picture below.
  • 29. Software Industrialization 29 6. Build Project with Jenkins 1. Installing plugins in Jenkins 1. Click on Manage Jenkins 2. Click on Manage plugins 3. Click on Available tab 4. Type maven in search field 5. Check Maven Integration 6. Click Install without restart 1 2 3 4 5 6
  • 30. Software Industrialization 30 Installing Maven Integration in Jenkins. 2. Create new project 1. In the Jenkins dashboard, click the New Item menu. 2. Give the name of new project. 3. Select Maven project 4. Click Ok. 2 3 4
  • 31. Software Industrialization 31 5. Click on tools configuration link 6. New empty project is created. 3. Setup Global tools configuration 1. Click Add Maven button. 5 1
  • 32. Software Industrialization 32 2. Write the name of Maven 3. Click save button. 4. Follow the steps of installing plugins in Jenkins as mentioned in the above section to install Git plugin 2 3
  • 33. Software Industrialization 33 4. Re-Configure Project 1. Open project and click on Configure menu to open project configuration window. 2. Click on Source code Management tab. 3. Check Git 4. Add project repository link from github.com 5. Add the pom.xml file location 6. Type “install” in Goals and options field 2 3 4 5 7
  • 34. Software Industrialization 34 7. Click on Build Now menu 7
  • 35. Software Industrialization 35 7. Nexus Nexus is a repository manager provided by Sonatype which allows to manage our dependencies JARs throughout the organization among other developers. It also allows our build projects to publish artifacts within the company internally. It works like Maven Repository. We can be able to share our build projects as a component to other projects as dependency. The following steps I went through to install and run Nexus in my Docker container. 1. Installing Nexus 1. Go to hub.docker.com and search for “sonatype/nexus” choose the latest version of sonatype/nexus i.e. sonatype/nexus3.
  • 36. Software Industrialization 36 2. Add nexus service configuration in docker-compose.yml file 3. Make directory name /nexus in the /docker/software-factory and change the permission for nexus folder by running command chown –R 200 nexus in the putty console. 4. Now run the command docker-compose up nexus to run the nexus service. There is no nexus installed so at first docker-compose will install the sonatype/nexus3 in the container.
  • 37. Software Industrialization 37 2. Creating user account in Nexus 1. Login with default username and password given in docker/software- factory/nexus/admin.password file. 2. Go to setting part and create new local user. 3. Create new nexus roles for user and assign it to the created user.
  • 38. Software Industrialization 38 4. Updating the maven settings.xml file which is located in docker/software- factory/jenkins/tools/hudson.tasks.Maven_MavenInstallation/default/conf/settings. xml 5. Create new server and assign username and password created in nexus.
  • 39. Software Industrialization 39 8. Adding Sonarqube in container 1. Open docker-compose.yml file and add sonarqube service in the file sonarqube: image: "sonarqube" ports: - "9000:9000" volumes: - ./sonarqube/data:/opt/sonarqube/data 2. Run command docker-compose up sonarqube to install sonarqube in the container. Go to host IP address followed by port 9000 to open sonarqube page. Ex: 192.168.0.33:9000
  • 40. Software Industrialization 40 9. Sonarqube in Jenkins 1. Select the project from Jenkins dashboard and go to configuration page.
  • 41. Software Industrialization 41 2. Go to build tab and write the command -Dsonar.host.url=http://sonarqube:9000 clean install sonar:sonar 3. Now we can build the project again. This time if the is executed in sonarqube for testing code with rules provided by sonarqube.
  • 42. Software Industrialization 42 4. Open sonarqube in the browser with IP address followed by port. Ex. 192.169.0.33:9000 5. We can see the results in the projects page of sonarqube.
  • 43. Software Industrialization 43 10. Jenkins with Nexus 1. To deploy the maven project in nexus we write the following command in project configuration page. -DaltDeploymentRepository=deploymentRepo::default::http://nexus:8081 repository/maven-snapshots/ clean deploy Here I insert new command in the above command which is –DskipTests=true –fn so the full command is - DaltDeploymentRepository=deploymentRepo::default::http://nexus:8081 repository/maven-snapshots/ –DskipTests=true –fn clean deploy. It is because there was error in my test case of my project so it was making difficulty while deploying so I put test-skipping command along with the deployment command to ignore run tests.
  • 44. Software Industrialization 44 2. Start Jenkins service and Nexus service. docker-compose start Jenkins docker-compose start nexus I could not run all three services at once because of high consumption of memory, my PC was not working well. That is way I ran only two services and did little change in goal options rather than pushing to sonarqube for checking code quality. I have done in the previous chapter with sonarqube separately. 3. After that when we build project, the project will create the jar file and deploy to the Nexus repository when the build is success. After successful deployment, it will be available in nexus repositories.
  • 45. Software Industrialization 45 11. Gitea Installation 1. Set gitea service setup configuration in docker-compose.yml file. 2. Create service in the docker container by running command docker-compose up gitea
  • 46. Software Industrialization 46 The error is due to port mapping because some service is already using port 22 so I have to change the port to 1022. Run docker-compose up gitea again.
  • 47. Software Industrialization 47 Now the gitea will be added in our host machine as shown in figure below:
  • 48. Software Industrialization 48 Open gitea in browser your host ip address followed by port 3000. Ex 192.168.0.33:3000 Setting configuration for gitea for the first time.
  • 49. Software Industrialization 49 Administration user setting and install gitea. Gitea Dashboard page.
  • 50. Software Industrialization 50 Creating new organization in gitea. New Organization created.
  • 52. Software Industrialization 52 12. Pushing project in gitea repository 1. Create new maven project in eclipse to push in the gitea repository. I have created a demo project to push in gitea. i.e. gitea-demo 2. Commit the project and push our project to the gitea repository link. Right click in project > team > share project 3. Create new repository in the local machine.
  • 53. Software Industrialization 53 4. Commit project 5. Add gitea repository
  • 54. Software Industrialization 54 The project is pushed to gitea repository.
  • 55. Software Industrialization 55 13. Adding gitea as source code management in Jenkins 1. Create new maven project in Jenkins i.e gitea-project 2. Add the gitea repository link in the source code management field in project configuration.
  • 56. Software Industrialization 56 2. Build project in Jenkins After build success