JUINTINATION

EC2 배포 파일 압축 및 파일 전송하기 본문

Amazon Web Services

EC2 배포 파일 압축 및 파일 전송하기

DEOKJAE KWON 2024. 7. 11. 18:50
반응형

이 글은 지난 EC2 재배포 프로세스와 배포 자동화 스크립트에서 이어지는 내용이다. 해당 글에서 배포를 위해 만들어둔 3개의 스크립트 파일을 tar로 압축할 것이다.

 

EC2 재배포 프로세스와 배포 자동화 스크립트

이 글은 지난 EC2 프로젝트 cron 주기적 실행에서 이어지는 내용이다. 현재 인스턴스는 새로 만들지 않고 아래와 같이 기존에 만들었던 파일들은 모두 지우고 crontab도 원상태로 복구한 상태로 시

juintination.tistory.com

tar 압축 연습

실제 배포 파일을 압축하기 전에 tar 사용법에 대해 알아보자.

  1. 먼저 $ touch a.txt 명령어와 $ touch b.txt 명령어로 압축 테스트용 파일 2개를 만든다.
  2. 그리고 $ tar -cvf hello.tar a.txt b.txt 명령어로 a.txt 파일과 b.txt 파일을 hello.tar 파일로 압축시킨다.
  3. 압축 해제 테스트를 위해 $ rm a.txt 명령어와 $ rm b.txt 명령어로 테스트용 파일 2개를 지운다.
  4. 마지막으로 $ tar -xvf hello.tar 명령어로 압축 해제가 되는지 확인한다.

위의 사진을 보면 해당 작업이 정상적으로 실행되는 것을 확인할 수 있다.

실제 배포 파일 tar 압축

배포용 3개의 스크립트를 $ tar -cvf deploy.tar check-and-restart.sh deploy.sh var.sh 명령어를 실행하여 deploy.tar 파일로 만들었다.

파일 전송

mobaXterm에서 Session 탭의 SFTP을 클릭하면 파일을 전송할 수 있는 모드로 접속된다.

Remote host는 현재 인스턴스의 IPv4 주소, Username에는 ubuntu, Port는 22, Use private key를 체크하고 처음 키 페어를 생성할 때 받은 키가 있는 경로를 입력하면 된다.

 

위의 창이 뜨면 원하는 경로에 deploy.tar 파일을 드래그 해주면 로컬 컴퓨터로 전송된다.

이 방법으로 전달받은 tar 파일을 서버에서 압축 해제한 뒤 $ ./deploy.sh 명령어만 실행한다면 정상적으로 실행이 될 것이다. 따로 테스트는 진행하지 않을 예정이다..


결론

사실 그냥 만들어놓은 스크립트만 정교하다면 압축하여 다른 개발자에게 전달만 하면 된다는 것 같다는 생각이다. AWS의 프리 티어로 서버를 운용중이기 때문에 1년이 지나면 사라지는 문제가 있는데 이런 방식을 잘 활용한다면 나중에 인스턴스를 새로 만들더라도 처음부터 세팅할 필요 없이 바로바로 서버를 실행할 수 있을 거라는 생각이 들었다.

어느덧 책의 중후반부까지 왔는데 남은 부분도 열심히 읽어서 빠르게 끝내보자..!

728x90
Comments