ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 스프링부트 게시판을 ec2로 업로드
    aws 2024. 1. 23. 03:13

    1. 인스턴스 시작

    로그인 -> 인스턴스 시작 클릭

     

     

    2. 인스턴스 이름 지정

    인스턴스 이름 지정

     

     

    3. OS 선택

    Ubuntu 선택 -> Amazon Machine Image(AMI)를 '프리 티어 사용 가능'으로 선택

     

     

    4. 인스턴스 유형 선택

     '프리 티어 사용 가능'이 t2.micro라서 선택

     

     

    5. 키 페어 생성

    키 페어 이름 입력 후 생성을 눌러 다운로드

    키 페어는 생성 후 다시 받을 수 없기 때문에 잘 보관해야 한다.

     

     

    6. 네트워크 설정

    인바운드 보안 그룹 규칙

    • 유형 - 'ssh'
    • 소스 유형 - '위치 무관'

     

     

    7. 스토리지 구성

    프리티어는 30GiB까지 사용 가능

     

     

    8. 인스턴스 생성 완료

     

     

    9. 보안 그룹 선택

     

     

     

    10. 인바운드 규칙 설정

    1. 사용자 지정 TCP - TCP - 8080 - AnywhereIPv4 - spring boot port
    2. SSH - TCP - 22 - AnywhereIPv4
    3. HTTP - TCP - 80 - AnywhereIPv4
    4. HTTPS - TCP - 443 - AnywhereIPv4

     

     

    11. 보안 그룹 생성

    이름과 설명 입력

     

     

    12. 보안 그룹 변경

    보안 그룹 추가로 10 ~ 11에서 만든 보안 그룹 추가 후 기존의 보안 그룹은 제거

     

     

    13. 인스턴스에 연결

    사용자 이름을 'ubuntu'로 해서 연결

     

     

    14. FileZilla 접속

     

     

    15. PuTTy private key 생성

    Load를 눌러 5번에서 만든 .pem파일 선택

     

     

    Save private key 클릭

     

    .ppk 파일 생성

     

     

    16. PuTTy 접속

    Host Name과 Post 입력

     

     

    Private key file for authentication에 14번에서 만든 .ppk 파일 선택

     

     

    Accept 클릭

     

     

    ubuntu 입력하고 접속 완료

     

     

    17. 시간 기준 변경

    sudo timedatectl set-timezone 'Asia/Seoul'

    기존 UTC에서 KST로 변경

     

     

    18. 업데이트

    sudo apt update
    sudo apt upgrade

     

     

    19. mariadb 설치

    sudo apt-get install -y mariadb-server

     

    mysql --version 혹은 mariadb --version으로 설치가 되었는지 확인

     

     

    20. root권한 획득

    sudo su

     

     

    21. root 계정 비밀번호 설정

    mysqladmin -u root -p password 'admin'

     

     

    22. 사용할 db와 계정 생성

    mysql -u root -p 접속

     

     

    create database devdb;

    create user 'scott'@'%' identified by 'scott';

    grant all on devdb.* to 'scott'@'%' with grant option;

    flush privileges;

     

     

    db툴로 접속 확인

     

     

    23. 외부 IP 접속 허용

    /etc/mysql/mariadb.conf.d/50-server.cnf

    50-server.cnf에 들어가서 bind-address 주석 처리

     

     

    10번에서 설정한 인바운드 규칙에 mariadb 포트인 '3306' 추가

     

     

    24. 게시판과 db연결

    퍼블릭 IPv4 DNS로 연결

     

     

    25. jar 전송

    intellij의 터미널에 ./gradlew bootJar 입력하여 jar 생성

     

     

    jar 전송

     

     

    26. jar 실행

    nohup java -jar dev-0.0.1-SNAPSHOT.jar 1> /dev/null 2>&1 &

    ps -ef | grep dev-로 pid 확인

     

     

    출처

    https://velog.io/@jonghyun3668/SpringBoot-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-EC2-%EB%B0%B0%ED%8F%AC%ED%95%98%EA%B8%B0

    https://extsdd.tistory.com/116

    https://blogshine.tistory.com/322

    https://velog.io/@shin6949/mariaDB-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%B4%88%EA%B8%B0-%EC%84%A4%EC%A0%95-Ubuntu

    https://velog.io/@jaybon/AWS-EC2-Spring-boot-%EB%B0%B0%ED%8F%AC%ED%95%98%EA%B8%B0

     

Designed by Tistory.