AWS

[패스트캠퍼스 수강 후기] 올인원 패키지 : AWS/Docker 클라우드 서버구축👉AWS강의 100% 환급 챌린지 6 회차 미션

Ch03 스프링 프로젝트 세팅 실습

16. 스프링 프로젝트 세팅(1)

17.스프링 프로젝트 세팅(2)

18. 스프링 프로젝트 세팅 실습(1) - 1

19. 스프링 프로젝트 세팅 실습(1) - 2

20. 스프링 프로젝트 세팅 실습(2)


스프링 프로젝트 실습에 필요한 이클립스와 자바를 설치한다.

이클립스 다운로드 및 설치 www.eclipse.org/downloads/

자바다운로드 및 설치 www.oracle.com/java/technologies/javase-jdk15-downloads.html

mac에서 이전버전의 JDK를 삭제하고 싶다면
/Library/Java/JavaVirtualMachines
경로로 이동하여 rm -rf 명령어를 사용하여 삭제하면 된다


이클립스 시작과 설정

이클립스 시작화면에서 작업환경 경로에 한글이 포함되지 않도록 주위하자

수업에서 제공된 스프링 부트 프로젝트를 임포트 한다. 파일의 임포트를 클릭한다

General의 Existing Projects into Workspace를 클릭한다

프로젝트 폴더를 선택한뒤 finish버튼을 클릭하여 프로젝트 로드를 완료한다

설정을 마치기 위해 help의 마켓플레이스를 클릭한다

sts를 클릭하여 spring tools 4를 설치한다

maven이 없다면 추가 설치한다

추가적인 패키지 설치를 마쳤다


프로젝트 추가

프로젝트 폴더 위에서 오른쪽 키를 클릭하여 프로젝트 속성을 설정한다

현재 프로젝트와 연결된 자바 정보를 확인 할 수 있다. 1.7~이상의 버전을 사용하는 것을 권장한다.

메이븐의 pom.xml이 제대로 설정 되어잇는지 확인하자

프로젝트의 src 폴더 내의 spring 설정 사항을 확인한다. db연결정도, 문자열 표시 정봐, 프로젝트의 설정 사항 변수가 저장되는 파일이다.

maven 라이브러리 정보가 저장되는 pom.xml을 확인해보자.

프로젝트의 오른쪽 키를 눌러 run configuration을 클릭하여 maven build를 확인하자

메이븐 빌드 설정을 확인한다.

설정이 완료 되면 run 버튼을 클릭하여 프로젝트 빌드를 시작한다

프로젝트 빌드가 시작되면 console창에 빌드 정보들이 계속 출력된다 프로젝트 빌드가 끝나게 되면 위와 같은 메세지가 출력된다. 이클립스 설치 후 프로젝트 import와 기본 설정 확인이 끝났다.


Tomcat설치

프로젝트 테스트를 위해 테스트 서버가 필요하므로 tomcat을 설치한다

톰캣 페이지로 접속하여 톰캣 8버전을 다운로드 주소를 복사한다

tomcat.apache.org/download-80.cgi


EC2 인스턴스의 보안 설정

EC2 인스턴스의 보안 설정이 필요하다. 톰캣 서버를 사용할 7000번 포트를 열어 준다.


파일질라 설치

AWS EC2에 프로젝트를 업로드 하기위해 파일질라를 설치한다

filezilla-project.org/download.php?type=client

파일질라를 실행하여 왼쪽 상단의 사이트 관리자를 클릭한다

프로토콜은 SFTP를 선택하고 연결할 EC2의 아이피를 입력하고 로그온 유형은 키 파일로 설정한다. ec2 생성하면서 발급 받은 *.pem 파일을 의미한다. 키 파일 경로를 선택한다.


Tomcat 설치

EC2을 터미널로 접속하여 설정이 tomcat을 설치한다

tomcat을 사용하기 위해서는 java가 필요하므로 설치 가능한 jdk를 확인한다.

yum list | grep jdk

아래 명령어로 openjdk를 설치한다

sudo yum install java-1.8.0-openjdk

설치된 자바 버전을 확인한다

java -version

tomcat설치를 위해 wget을 설치한다

sudo yum install wget

 * tomcat삭제 명령어는 아래와 같이 폴더를 삭제 하면 된다

sudo rm -rf /opt/tomcat

tomcat 설치를 위한 폴더 생성

sudo mkdir /opt/tomcat

tomcat 다운로드

wget http://[downloads.apache.org/tomcat/tomcat-8/v8.5.59/bin/apache-tomcat-8.5.59.tar.gz]

다운로드 한 압축 파일을 /opt/tomcat에 압축을 해제 한다

sudo tar xvf apache-tomcat-8*tar.gz -C /opt/tomcat --strip-components=1 

tomcat 폴더로 이동한뒤

cd /opt/comcat

tomcat 계정을 추가한다.

sudo useradd -M tomcat

tomcat 폴더에 소유권과 권한을 설정한다

sudo chgrp -R tomcat /opt/tomcat
sudo chgrp -R tomcat webapps/ work/ temp/ logs/

conf 폴더에도 권한을 수정, webapps에도 권한을 수정

sudo chmod 777 conf
sudo chmod 777 conf/server.xml
sudo chmod 777 webapps

tomcat 서비스 파일 생성

# Systemd unit file for tomcat
[Unit]
Description=Apache Tomcat Web Application Container
After=syslog.target network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/jre
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/bin/kill -15 $MAINPID\
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target

tomcat  명령어를 활성화 후 시작, 그리고 상태 확인

sudo systemctl enable tomcat
sudo systemctl start tomcat
sudo systemctl status tomcat

webapps 폴더를 정리한다.

cd /opt/tomcat/webapps/
sudo rm -rf ROOT
sudo rm -rf docs
sudo rm -rf examples
sudo rm -rf host-manager/
sudo rm -rf manager/

 

 

파일질라를 통해 수업에서 제공된 server.xml 파일을 conf폴더로 업로드하여 덮어쓰기한다.

이전에 review 를 빌드한 *.war파일을 webapps폴더에 업로드한다. *.war 파일은 review/target폴더에 있다.

 

이후 {인스턴스IP}:7000으로 접속하게 되면 스프링부트로 제공된 review 화면을 볼 수 있다


6일차 마무리

프로젝트를 만들고 설정하고 배포하는 과정이 복잡하고 설정내용이 굉장히 많은 것을 다시 한번 느꼈다. 이를 자동화 하는 부분이 반드시 필요함을 새삼 느꼈으며 jenkins통한 자동화 방안을 알아보자


현재 수강중인 강의는 아래와 같다
올인원 패키지 : AWS/Docker 클라우드 서버구축👉https://bit.ly/3bFlm0e