서론
하나의 백엔드 개발자라고 하면 서버 구축부터 배포까지는 할 줄 알아야 프로젝트에서 1인분을 할 수 있다고 볼 수가 있다.
단순 정적배포부터 docker compose를 활용한 동적배포까지 구축을 해볼 것이다.
정적 배포
요즘은 aws, azure, github action 등 다양한 회사들이 배포를 지원해주고 CD까지 제공을 하니 잘 쓰지는 않지만 은행과 같이 보안이 중요한 곳에서는
정적 배포를 통해 보안을 하곤 한다. 일단 환경은 ec2로 컴퓨팅 환경을 구축한다.
ec2 접속
aws IAM을 통해 접근 권한을 한정한 ID를 만들고 이를 통해 EC2를 만들어주도록 하자. 그리고 보안그룹을 통해 pem 양식의 보안키를 발급받고
보안키를 통해 개인키를 할당받는다. 이 개인키를 사용하여 EC2 인스턴스의 퍼블릭 IP주소를 통해 접근을 해주도록 하자.
SSH 접속에 사용되는 명령어
ssh -i [키파일_위치] [계정명]@[도메인]
예시 : ssh -i ./exp-1.pem ubuntu@54.111.111.11
권한 추가
sudo를 너무 많이 사용하면 번거로우니 사용할 수 있는 몇가지 명령어
sudo -i : root 계정으로 로그인한 것처럼 환경 전환
sudo usermod -aG docker $USER
Docker Compose를 사용한 동적 배포