WEB 배포하기 - 웹서버(3가지 방식)

호이초이·2024년 11월 13일
1
post-thumbnail

우리가 local 컴퓨터에서 웹을 제작하고, 테스트도 하고, 이걸 깃허브를 이용해서 코드 관리를 하게된다. 내가 개발한 페이지를 나만 보는 것이라면 우리는 여기까지만 하면 된다. 하지만, 이것을 인터넷 웹 상에 올려놓고(?), 모든 이들이 접속할 수 있게 만들어놔야 진정한 웹이 완성되는 것이다!
-> 즉, 배포를 해야하는 것이다.

배포는 웹 서버를 돌리는 작업이므로, 이를 위해서는 웹 서버를 배포하는 방법을 알아야 한다.

웹 서버 배포 방식에는 크게 3가지가 있다:

  1. 호스팅 업체 이용하기 (ex. Vercel, Netlify)
  2. AWS EC2 + S3 이용하기
  3. CloudFront 이용하기

호스팅 업체 이용하기

호스팅 업체를 이용해서 웹서버를 배포하는 방식은 굉장히 단순하다.
(지금까지 나는 항상 웹서버를 배포할 때, 호스팅 업체를 이용해서 배포를 진행해 왔다.)

장점

  • 서버 배포가 매우 간단하다.
  • CI/CD가 자동으로 구축된다.
  • 도메인 주소도 할당해주며, 도메인 변경도 가능하다.

단점

  • 웹 서버가 돌아가는 구조에 대해 알 방법이 없다.
  • 무료가 아닐 수 있다.

사용법

조건: 웹 코드를 깃허브로 관리하고 있어야 한다!

  1. 호스팅 업체 (Vercel) 사이트에 접속한다.
  2. 깃허브 아이디와 연결한다.
  3. 깃허브에서 해당 웹 프로젝트를 import 한다.
    import
  4. import 후, 배포 설정을 한다 (어떤 브랜치를 배포할지 등).
    settings

이렇게만 하면 바로 웹서버가 배포된다!

정말 간단하게 웹서버를 배포할 수 있다. 그리고 호스팅 업체는 자신들의 도메인을 붙여서 url를 만들어준다! (개이득)


2. AWS EC2 + S3 이용하기

이번에 창업팀 프로젝트를 진행하면서 처음으로 AWS를 이용하여 배포를 진행했다. 이전에는 항상 호스팅업체를 이용했지만, 웹서버 배포를 AWS 방식으로 해본 경험이 없었기에 도전해보고자 시도를 해보았다.

장점

  • AWS에 대해서 공부할 수 있다.
  • 웹 서버가 돌아가는 구조에 대해 직접 탐구해볼 수 있다.

단점

  • 초기 서버 설정이 복잡하다.
  • CI/CD를 직접 구축해야 한다.
  • 도메인 연결을 직접 해줘야 한다 (IP 주소 -> 도메인 할당).
  • SSL 연결을 직접 해줘야 한다.

이렇게 봤을 때 단점이 많지만, 직접 해보면 좋은 경험이 된다.

사용법

조건: AWS EC2와 S3를 구축해 놓아야 한다.

  1. 깃허브에서 코드를 관리한다.
  2. GitHub Actions을 이용해 CI를 구축한다.
  3. CI를 통해 내부 YAML 파일을 작성하여 S3에 빌드된 zip 파일을 올린다.
  4. AWS의 CodeDeploy를 설정해 CD를 구축한다.
  5. S3에 새로운 zip 파일이 올라오면 CD를 통해 EC2에서 빌드를 새로 한다.
  6. EC2에서는 웹 서버 제작에 도움을 주는 Apache, Nginx, PM2 등을 사용하여 서버를 운영한다. ( 난 PM2를 사용했다.)
  7. PM2를 사용하여 서버가 계속 실행되게 한다.
  8. EC2 IP 주소도메인 주소를 연결한다. (AWS Route53 사용)
  9. SSL 연결을 해준다. (복잡해서 나중에 따로 포스팅 예정)

이렇게 하면 웹서버가 배포된다.
https://gtmk.co.kr/ 이 페이지가 EC2로 배포된 페이지이다!

약간 약식으로 이런 느낌이구나를 적은 것이고, 직접 구체적으로 설정하는 것들은 다음 포스팅에서 다룰 예정이다.


3. CloudFront 이용하기

CloudFront를 이용한 웹 배포 방식에 대해서도 공부 중이다. 이 방법에 대한 자세한 내용은 추후에 포스팅을 통해 정리할 예정이다.


마무리

이와 같이 웹 배포는 다양한 방법이 있으며, 각 방법에 따라 장단점이 존재한다. 자신에게 맞는 방법을 선택하여 배포하고, 실제 운영 환경에서 웹 서버가 잘 돌아가는지 확인하는 것이 중요하다!

profile
칼을 뽑았으면 무라도 썰자! (근데 아직 칼 안뽑음)

0개의 댓글