$ sudo su - => root 사용자로 변경 # 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 => enable 시 시간이 조금 걸리게 됨, 밑에 명령어로 수정할 임시패스워드 만드는 시간이 걸리는 것 # cat /var/lib/jenkins/secrets/initialAdminPassword # 패스워드 수정
# 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 => gz는 압축파일이기에 z가 필요함, z의 위치는 f보다 앞에 있어야함(z위치 중요, 압축을 풀면서 아카이브를 푸는 것이기 때문) # mv apache-maven-3.8.6 maven => 압축 풀린 폴더 이름이 길어서 maven으로 이름 변경 # cd maven # cd bin mvn은 maven을 사용하기 위한 명령어 # cd ~ # find / -name java-11* => 설치 운영과정에서 java가 계속 필요하므로 위치를 찾아서 bash_profile에 넣어야 함 => 11버전 java인데 릴리즈를 모르니까 *처리 # 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 # source .bash_profile # echo $PATH bash_profile에 넣은 경로 적용시키고 경로가 환경변수로 잘 정의되어 root폴더에서 mvn 명령어 잘 실행되는지 확인하기 # mvn -v 루트 폴더에서도 maven 명령어 사용 가능
플러그인 설치 위해 Jenkins 관리로 이동연동을 위한 도구를 플러그인에서 설치하고 global tool configuration에서 설정하는 것
jenkins에서 maven을 사용하기 위한 플러그인, Install without restart 클릭
global tool configuration 하기 위해 이동
global tool configuration 클릭java와 maven에 대한 global tool configuration 완료
# 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을 기동하는 명령어가 담긴 파일, 해당 명령어를 입력하여 tomcat을 기동 tomcat에 접속하였지만, Manager App을 눌렀을 때 403 Access Denied 출력됨
권한 관련 설정해야 함 # cd /opt/tomcat # find / -name context.xml => remote에서 tomcat에 대한 접근이 차단되어 있기 때문에 해당 파일에서 수정해야 함 # 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" /> --> 해당 부분 주석 처리, 127.0.0.1 IP인 로컬에서만 들어올 수 있도록 설정된 것을 주석 처리 # 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" /> --> 해당 부분 주석 처리/opt/tomcat/conf 경로에서 사용자 정보를 지정해줄 수 있음(jenkins가 tomcat에 로그인하기 위한 정보) # 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"/>
Manager App => vi tomcat-users.xml에서 설정한 아이디와 패스워드 입력(jenkins가 ID와 PW를 가지고 tomcat을 셋팅할 수 있도록 해줌)tomcat에 maven으로 만든 war파일을 배포하기 위한 플러그인jenkins가 tomcat을 이용하기 위해 자격증명이 필요하기에 Manage Credentials
Jenkins 클릭
global credentials 클릭Add credentials 클릭Username과 Password가 로그인을 위한 정보, ID는 로그인을 위한 정보 아님