스프링웹 배포 - AWS편
gpt 교수님께 자문을 구했다...^^
근데 내가 했던 프로젝트는 너무 맘에 안든다... 완벽을 추구하는것 보다는 그냥 실행에 옮기는게 언제나 낫지만 아무튼...
그래서 배포연습용으로 간단하게 하나 만들예정....~
DB연결까지는 해야하니까 간단히 출력만 되게ㅋㅋㅋ
1. AWS 사용
우분투 선택
뭔지는 모르겠지만 만들었다
키 생성할때 꼭 다운받아서 잘 보관해야한다고 한다 .pem 파일
SSH 통신을 할때 ip 제한을 어떻게 할것인지에 관한 내용으로 집에서 고정된 ip로만 접근하시는 분들은
내 ip 를 선택해 주시면 되고 저는 노트북으로 카페나 이곳저곳 이동하면서 사용할 일이 많기 때문에
위치무관(0.0.0.0/0)으로 설정해주도록 하겠습니다.
30까지 된다니까 8에서 30으로 변경해줌
보안설정을 위해...
- 인바운드 규칙(inbound) : 외부에서 EC2나 RDS 등의 내부로 접근할때 사용되는 방화벽 규칙
- 아웃바운드 규칙(outbound) : EC2나 RDS 등의 내부에서 외부로 접근할때 사용되는 방화벽 규칙
우리는 EC2에 접속해서 서버를 띄우는것이 목적이기 때문에 인바운드 규칙만 건드려주도록 하겠습니다.
규칙추가눌러서 네줄로 만들고
각각 사용자지정TCP, SSH, HTTP, HTTPS를 위와같이 설정
다시 인스턴스 콘솔로 돌아가서 인스턴스 선택(체크)
그리고 작업 -> 보안 -> 보안그룹변경
원래 있던거 제거하고 만든거 추가해준다
이제 연결해볼차례
인스턴스 연결 탭에서 연결 버튼을 누르면 브라우저 탭에서 바로 연결이 된다!! 신기ㅋㅋㅋ
SSH 클라이언트 방법으로도 시도해본다.
아주 친절하게 설명해줌
pem 파일 있는 폴더에서 터미널 열기
chmod 400 firstkey.pem 입력
아... 미친
리눅스나 mac은 chmod가 먹히는데 윈도우는 아니다...
걍 putty 써야겠다
근데 여기서도 .pem을 .ppk로 바꾸려면 puttygem을 설치해야한다.
그 이후 ppk를 putty가 실행하는 방식
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
Download PuTTY: latest release (0.78)
This page contains download links for the latest released version of PuTTY. Currently this is 0.78, released on 2022-10-29. When new releases come out, this page will update to contain the latest, so this is a good page to bookmark or link to. Alternativel
www.chiark.greenend.org.uk
여기서 다운받을 수 있다
puttygen 실행 후 load 클릭. 아까 그 pem 파일 선택
굿
save private key 버튼까지 눌러줘야 파일로 저장된다.
ssh - auth 들어가서 browse 클릭
만든 ppk파일 선택
allow agent forwarding도 체크해준다
data 탭으로 넘어와서 이름 ubuntu로
난 ubuntu니까
마지막으로 이 인스턴스의 퍼블릭 IPv4에 써있는 주소를 적고 open하면 정상적으로 연결됨
사진에 좀 잘렸는데 save 꼭 눌러야지 설정이 저장됨
구글링해서 나오는것 이것저것 시도해봄
개짱난다
레알 개열받네
별 난리 다 쳐도 안되더니 putty 최신버전 받으니까 된다
나같은경우는 data에 dns네임 어쩌구 안붙이고 걍 ubuntu 썼음
그리고 업데이트후에 puttygen에서 2로 변경한 파일 말고 걍 기본 3 설정으로 만든 파일 넣었음
후련하다~
2. ubuntu에 mysql 설치
sudo apt update
sudo apt-get install mysql-server
흠...?
sudo service mysql start
mysql 서버 시작
mysql -u root -p
아니 다들 설치할때 root 비밀번호 설정하는 시간이 있다고 하던데... 나는 그런거 없이 설정이 끝났다.
그래서 비밀번호가 없나? 하고 들어갔더니
나한테 왜이래~~~!!
바로 엔터도 아니고 root toor password 0000 다 아니다!!!
난 아무것도 설정한 적이 없는데...
해결방법
일단 root 말고 그냥 mysql 들어간다
sudo mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '새 비밀번호';
성공~~~~~