프론트 서버를 배포 하기 위해서 Nginx와 Apache를 고민하던 중, Nginx가 요새 많이 사용되기도 하고 성능이 좋고 가볍다고 해서 Nginx를 선택했다.
CI/CD를 사용하지 않는다면 도커 이미지를 만들어 줄 필요가 없지만, CI/CD를 위해서 도커를 살짝 맛봤다.
ec2 인스턴스 생성 ( 보안 설정으로 포트를 열어줘야 함 + 탄력 ip 설정
nodejs 설치 - curl -sL https://deb.nodesource.com/setup_12.x sudo -E bash - sudo apt-get install -y nodejs
npm 설치 - npm install
npm run build —> nginx에 build 디렉터리의 절대 경로를 넘겨주면 이 디렉터리 내의 index.html 파일을 읽어서 서버에 띄운다.
sudo vi nginx.conf —> nginx.conf 파일 생성 ( 설정 파일 )
sudo vi Dockerfile —> Dockerfile 생성 ( 도커 이미지를 만들기 위한 파일 )
sudo docker build -t <파일 이름>:0.1 . ( 점을 꼭 찍어야 함 )
sudo docker run -d —name <도커 이름> -p 3000:80 <파일 이름>:0.1
nginx 설정에서는 listen 80이기 때문에 3000포트로 들어오면 80포트로 넘겨준다.