Continuous Integration(지속적 통합(CI)) : 일련의 과정을 자동화
=============================mobaxterm=============================
$ sudo su -
# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
# yum install -y fontconfig java-11-openjdk
# amazon-linux-extras install -y java-openjdk11
# yum install -y jenkins
# systemctl enable --now jenkins
# cat /var/lib/jenkins/secrets/initialAdminPassword # 패스워드 수정
# yum install -y git
======================================================================
-> mobaxterm에서 가져온 비밀번호 입력
-> start using jenkins 클릭
item name : HelloWorldJob
Freestyle project 클릭
설명 : HelloWorldJob
Build : execute shell 선택
echo "Hello World"
uptime
Jenkins 관리 > 플러그인 관리 > 설치가능 > github 검색
=============================mobaxterm=============================
# hostnamectl set-hostname jenkins-server
# yum install -y git
======================================================================
Jenkins 관리 > Global Tool Configuration > Git
item name : PullCodeFromGitHub //jenkins로 코드받아옴
Freestyle project 클릭
설명 : Pull Code From GitHub
소스 코드 관리 : Git
=============================mobaxterm=============================
# cd /opt
# wget https://dlcdn.apache.org/maven/maven-3/3.8.6/binaries/apache-maven-3.8.6-bin.tar.gz
# tar -xvzf apache-maven-3.8.6-bin.tar.gz #
# mv apache-maven-3.8.6 maven
# cd maven
# cd bin
# cd ~
# find / -name java-11*
# vi .bash_profile
M2_HOME=/opt/maven
M2=/opt/maven/bin
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-1.amzn2.0.3.x86_64
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:$JAVA_HOME:$M2_HOME:$M2
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
# source .bash_profile
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-1.amzn2.0.3.x86_64:/opt/maven:/opt/maven/bin
# mvn -v # 버전 나오면 성공
======================================================================
Jenkins 관리 > 플러그인 관리 > 설치가능 > 검색
Jenkins 관리 > Global Tool Configuration > JDK > ADD JDK
Maven > ADD MAVEN
#!/bin/bash
timedatectl set-timezone Asia/Seoul
=============================mobaxterm=============================
# hostnamectl set-hostname tomcat-server
# amazon-linux-extras install -y java-openjdk11
# cd /opt
# wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.65/bin/apache-tomcat-9.0.65.tar.gz
# tar -xvzf apache-tomcat-9.0.65.tar.gz
# mv apache-tomcat-9.0.65 tomcat
# cd tomcat/bin/
# ./startup.sh //tomcat 기동
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
# cd /opt/tomcat
# find / -name context.xml // 파일찾기
# vi /opt/tomcat/webapps/host-manager/META-INF/context.xml
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
# vi /opt/tomcat/webapps/manager/META-INF/context.xml
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
# cd tomcat/bin/
# ./shutdown.sh
# ./startup.sh
# /opt/tomcat/conf
# vi tomcat-users.xml
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="kosa0401" roles="manager-gui, manager-script, manager-jmx, manager-status"/>
<user username="deployer" password="kosa0401" roles="manager-script"/>
<user username="tomcat" password="kosa0401" roles="manager-gui"/>
# ln -s /opt/tomcat/bin/startup.sh /usr/local/bin/tomcatup
# ln -s /opt/tomcat/bin/shutdown.sh /usr/local/bin/tomcatdown
# tomcatdown
# tomcatup
======================================================================
Jenkins 관리 > 플러그인 관리 > 설치가능 > deploy to container 검색
Jenkins 관리 > Manage Credentials > Jenkins > Global credentials > Add Credentials