사이먼's 코딩노트
[SpringBoot] 실전 서비스 배포 (1) 본문
[실전 서비스 배포]
- 이번 포스팅에서는 직접 도메인을 구매하고 서버 플랫폼을 이용해서 우리가 만들어낸 프로젝트를 실제로 다른 사용자들이 로컬 환경이 아닌 곳에서도 접속할 수 있게 해봅시다.
[도메인 구매]
- 먼저 서비스를 실제로 배포하기 위해선 도메인을 하나 구매해야한다.
- 여기서 말하는 도메인이란, google.com 이나 naver.com과 같은 우리가 흔하게 접할 수 있는 웹 사이트의 주소이다.
- 넓은 의미로는 네트워크 상에서 컴퓨터를 식별하는 호스트명이라고 생각하면 좋다.
- 우리는 보통 도메인 네임을 구매한다고 하는데, 말 그대로 배포할 도메인을 우리가 직접 사이트를 통해서 구매해야한다.
- 도메인 네임이 쉽고 범용적인 것을 고르는 것이 유리하지만, 그 만큼 가격 차이도 어느정도 발생한다.
- 아래는 추천하는 두 개의 도메인 구매 사이트이다.
- iwantmyname 주소 : https://iwantmyname.com/
- 가비아 주소 : https://www.gabia.com/
[도메인 관리]
- 도메인 구매를 마쳤다면 구매한 도메인 네임을 등록하고 관리가 필요하다.
- 도메인 구매와 도메인 관리는 굳이 같은 서비스를 이용하지 않아도 되고 서로 다른 곳에서 관리가 가능하다.
- 아래는 도메인 관리를 위해 추천하는 사이트이다.
- DNSZI 주소 : https://dnszi.com/
- 회원가입을 통해 로그인을 하게 되면 좌측 상단에 '도메인 추가' 라는 메뉴를 통해 구매한 도메인 네임을 입력해준다.
[서버 생성]
- 도메인 추가까지 완료가 되면 이제 네이버 클라우드 플랫폼을 통해 서버를 생성해야한다.
- 네이버 클라우드 플랫폼은 유료 서비스지만 최초 가입시 100,000 크레딧을 무료로 제공하여 3달 정도 무료로 이용할 수 있다.
- 아래는 네이버 클라우드 플랫폼 사이트 주소이다.
- 네이버 클라우드 플랫폼 주소 : https://www.ncloud.com/
- 회원가입을 통해 로그인을 하게 되면 우측 상단에 콘솔이라는 버튼을 통해 서버 관리가 가능한 콘솔 대시보드로 이동하게 된다.
- 서버를 생성하기 전 VPC와 Subnet 네트워크를 먼저 생성하여 설정해줘야 한다.
- VPC는 기업이 공유된 퍼블릭 클라우드 인프라에 프라이빗 클라우드와 같은 자체 컴퓨팅 환경을 구축할 수 있는 퍼블릭 클라우드 서비스이다.
- Subnet은 네트워크 내부의 네트워크로 IP 주소에서 네트워크 영역을 부분적으로 나눈다고 생각하면 좋다.
- 콘솔창에 진입하면 좌측에 메뉴바가 있는데 거기서 Services 메뉴를 열어보면 Networking에 VPC라는 항목을 선택하고 VPC 생성을 해주면된다.
- VPC 생성을 마치면 좌측 메뉴의 Subnet Management 메뉴를 선택하여 Subnet을 생성한다.
- 마지막으로 서버를 생성해보도록 하겠습니다.
- 마찬가지로 콘솔창 메뉴에서 Services를 열었을 때 Compute에 Server를 선택하고 서버 생성을 진행한다.
- 서버 이미지를 선택할 때는 CentOS, Standard로 설정한다. 여기서 말하는 이미지는 리눅스 환경의 OS를 설치하기 위해 필요한 부팅이미지라고 생각하면 좋다.
- 서버 생성 과정중에 인증키 설정이 있는데, 새로운 인증키를 생성하고 다운받은 .pem 파일은 나중에 서버 root 비밀번호를 알기 위해서 반드시 필요하기 때문에 따로 개인적인 곳에 저장을 권장한다.
- 서버 생성을 마치면 부팅 시간이 있기 때문에 다소 몇 분의 시간이 지나야 등록된 서버가 활성화가 된다.
- 서버가 활성화가 됐다면 마지막 작업으로 서버 메뉴 중 ACG를 선택하여 방화벽 설정이 필요하다.
- 기본적으로 아래와 같이 5가지의 Port에 대해서 방화벽 설정이 필요하다.
- 80번 포트 : HTTP, 웹 서비스용 포트
- 81번 포트 : NGINX PROXY MANAGER 관리용 포트
- 443번 포트 : HTTPS, 웹 서비스용 포트
- 22번 포트 : 리눅스 원격접속용 포트
- 3306번 포트 : 리눅스에 설치된 MySQL 관리용 포트
[네임서버 등록]
- 서버 등록을 마치면 iwantmyname이나 가비아에서 구매한 도메인의 관리 권한을 DNSZI에 위임하는 작업이 필요하다.
- 먼저 네이버 클라우드를 통해 생성된 서버의 공인 IP 주소를 확인한다.
- DNSZI에 접속하여 좌측 도메인 목록의 도메인을 선택하고 '호스트IP 관리' 메뉴를 선택하여 위에서 확인한 공인 IP 주소를 입력해준다.
- 이 때 A레코드에는 www가 붙어있는 버전과 안붙어있는 버전 두가지를 모두 입력해준다.
- 이렇게 되면 나중에 범용적으로 외부인이 우리의 홈페이지를 접속할 때 www.anibirth.shop 로도 방문이 가능하고 anibirth.shop으로도 방문이 가능하게 된다.
- 마지막으로 DNSZI에서 좌측에 생성된 네임서버를 도메인을 구매한 사이트에서 등록해줘야한다.
반응형
'Java > SpringBoot' 카테고리의 다른 글
[SpringBoot] 실전 서비스 배포 (3) (0) | 2024.07.27 |
---|---|
[SpringBoot] 실전 서비스 배포 (2) (2) | 2024.07.24 |
[SpringBoot] 결제 시스템 (0) | 2024.07.18 |
[SpringBoot] 멀티 채팅방 (3) (0) | 2024.06.19 |
[SpringBoot] 멀티 채팅방 (2) (0) | 2024.06.19 |