시스템관리 시간에 학생별로 진행이 얼마나 되어있는지 간편하게 확인을 위해 이 웹사이트를 만들었다.
본 글에서는 개발은 건너뛰고 배포를 어떻게 하였는지에 대해 써보려고 한다.
https://github.com/minhee231/SystemControl_Web
GitHub - minhee231/SystemControl_Web: 시스템관리 수업 진행도 체크용 웹 사이트
시스템관리 수업 진행도 체크용 웹 사이트. Contribute to minhee231/SystemControl_Web development by creating an account on GitHub.
github.com
AWS EC2를 사용하여 서버를 운영할 것이다.
이미 내가 X-Best 서버로 활용하고 있는 이 인스턴스를 사용할 것이다.
서버를 가볍게 돌리기 위해 도커 이미지를 활용할 것이다.
인스턴스에 연결한다.
yum install docker -y
이 명령어로 도커를 설치.
systemctl enable --now docker
도커 실행
#로컬
scp -i [pem키 경로] [보낼 파일 경로] ec2-user@[인스턴스IP]:/home/ec2-user
위 명령어로 만들어둔 도커파일과 파이썬 코드 등을 서버에 보내준다.
보내준 모습.
다시 인스턴스로 돌아와 받은 파일 압축을 해제 해준다.
unzip [파일명]
압축 해제한 모습.
docker build -t [이미지명] .
명령어로 이미지를 생성해준다.
docker images
이미지가 잘 생성되었나 확인
docker run -d -p [포트]:[포트] [이미지이름]
이미지 실행
쿼리를 날려 잘 작동하는지 확인
이제 도메인을 추가할려고 한다.
하지만 나의 서버의 퍼블릭 주소는 하나이다.
그래서 로드밸런서를 활용하여 헤더값을 확인해 특정 포트로 접속하게 만들것이다.
먼저 해당 대상그룹을 생성해줘야 한다.
대상 그룹 생성
대상그룹의 이름지정, 포트로는 서버에서 받는 포트로 지정, VPC도 지정해준다.
보류 창으로 넘기고 대상그룹 생성.
로드밸런서로 넘어오면
X-Best 프로젝트 덕에 이미 로드밸런서가 만들어져있다.
로드밸런서의 리스너 및 규칙 창을 봐줍시다.
규칙 수정을 위해 규칙을 눌러준다.
규칙 추가를 눌러준다.
규칙 이름 지정.
조건 추가.
호스트 헤더와 사용할 DNS 주소를 입력해준다.
위에서 만든 대상그룹을 선택한 후 생성
규칙이 잘 생성되었다.
route53에서 레코드를 생성해준다.
도메인을 입력했을 때 접속이 정말 잘 되었다!!!
'AWS' 카테고리의 다른 글
[AWS] 도메인 별 트래픽 라우팅을 위한 로드 밸런서 규칙 설정 (3) | 2024.04.26 |
---|---|
[AWS] 다른 계정에 있는 로드밸런서 사용하기 (0) | 2024.04.12 |
[AWS] 다른 계정과의 VPC peering (0) | 2024.04.12 |
Vue.js 빌드 파일 배포하기 (0) | 2024.01.01 |
[AWS] S3로 정적 웹 배포하기 (0) | 2023.06.11 |