![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/biZk4r/btrYdinIWEp/57lfA3kqCSCPRIBLtHYZ8K/img.png)
시작하자 1. AWS lightsail 홈 화면에 있는 인스턴스 중 스프링부트 프로젝트를 배포할 가상 서버의 터미널을 엽니다. 인스턴스에 표시되고 있는 터미널 모양 아이콘을 클릭하면 됩니다. 2. 터미널에 [java] 명령어를 입력해 자바가 설치되었는지 확인합니다. 3. 아마 안 되어있을 테니, 이어서 바로 설치를 시작합니다. 설치에 필요한 명령어 순서는 다음과 같습니다. $ sudo apt update $ sudo apt install openjdk-17-jdk $ java --version 마지막 세 번째 명령어는 설치된 자바의 버전을 확인하는 것으로, 설치가 잘 되었다면 아래와 같은 결과를 확인할 수 있습니다. 4. 이제 jar 파일을 실행할 차례입니다. 명령어 [ls]를 입력해 옮겨둔 jar 파일..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/beQ6P9/btrX411C55j/TLPCLOn5P4TX2zZ2zJnmdk/img.png)
시작하자 1. 추후 파일 전송 시스템을 이용하기 위해 AWS 프라이빗 키를 받아둡니다. lightsail 홈 화면 우측 상단의 [Account] 항목을 클릭한 다음, SSH keys를 선택해 [Default Key] 하나를 다운로드하면 됩니다. 2. 프라이빗 키 파일이 다 받아지면, 찾기 쉬운 위치로 옮겨두고 이름도 쉽게 바꾸는 것이 좋습니다. 필자는 C 드라이브 폴더로 옮겨 'mykey.pem'으로 이름을 변경하였습니다. 3. 프라이빗 키를 확보했으니 이제 서버에 원격 접속해 직접 파일을 옮길 수 있는 STFP 프로그램 파일질라를 사용해 스프링부트 프로젝트의 jar 파일을 옮겨보겠습니다. 파일질라는 https://filezilla-project.org/에서 다운로드할 수 있는 무료 프로그램입니다. 설치..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cdqHVn/btrX1z4PtbS/TivgDrt8221IuRM74PuQT1/img.png)
시작하자 1. AWS lightsail 인스턴스에 접근할 수 있는 고정 IP를 생성하겠습니다. IP란 인터넷 상에서 내 서버의 주소를 나타내는 값이라고 보시면 됩니다. AWS lightsail 네트워크 화면(https://lightsail.aws.amazon.com/ls/webapp/home/networking)에서 [Create static IP]를 클릭합니다. 2. Attach to an instance는 고정IP가 참조할 인스턴스를 고르는 항목인데, 여기에서 앞서 만들어 둔 인스턴스를 선택합니다. 그런 다음 고정IP의 닉네임(?)을 적당한 것으로 지어주고 마무리합니다(Create). 3. 고정IP 생성은 간단하게 끝입니다. 4. 다음은 방화벽 설정입니다. 내가 만든 스프링부트 서비스가 사용하는 포트..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/uuXmA/btrX17T8NFp/SbxlNIihNWv7ufTCbeWObk/img.png)
개요 AWS lightsail은 아마존 웹 서비스에서 운영하는 웹 서비스에 특화된 클라우드 서비스입니다. 이름에서 알 수 있듯 복잡하지 않고 가볍게(light) 이용할 수 있다는 특징이 있습니다...만 정말로 그런지는 모르겠습니다. 여느 호스팅 서비스와 마찬가지로 AWS lightsail 또한 비용이 발생하는 서비스이지만, 처음 세 달까지는 무료로 이용할 수 있다는 장점이 있어 연습 목적으로 사용하기에 적절한 서비스입니다. 지금부터 스프링부트로 만든 간단한 REST API를 AWS lightsail을 이용해 호스팅하는 절차를 안내할 것인데, 이미 AWS 계정이 있다고 가정하고 진행할 것이니 참고하세요. 시작하자 1. AWS lightsail 홈 화면(https://lightsail.aws.amazon.c..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cg6WIG/btqYxqeUypK/IPjMMkhZVJW3UxkKmLo8TK/img.png)
안녕하세요! 이번 포스팅은 AWS를 통한 서비스 매니지먼트 관련 사항 중 CloudFront의 캐시 문제에 대한 포스팅인데요, 필자가 직접 아마존 S3 버킷을 만들고, 버킷에 정적 파일을 업로드한 다음 CloudFront를 통해 배포하는 작업을 수행한 직후 경험한 다음과 같은 문제에 대한 해결책을 알아내고, 정리해보았습니다. 문제 S3 버킷의 정적 파일을 CloudFront로 배포한 다음 S3 버킷의 정적 파일(index.html)을 업로드한 후 얼마 지나지 않아 업데이트한 index.html을 새로이 업로드하였다(덮어쓰기). 그런데 배포된 주소로 페이지를 열어보니 index.html의 내용이 업데이트되지 않은 상태였다. 새로고침을 여러 번 해 보아도 이는 마찬가지 였다. 원인 CloudFront로 배포..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/CLbLJ/btqV8GT1q2x/eGgQprVDivFHUHkHUkPat1/img.png)
pem 파일은 보안 웹 사이트를 인증하는 데 사용되는 인증서를 인코딩한 파일입니다. 이것이 있으면 웹 사이트에 접근 권한을 얻을 수 있습니다(인증서니까). AWS의 EC2서비스에서 서버 인스턴스를 생성한 뒤 .pem의 확장자로 된 키 파일을 다운로드 받으면 이를 통해 AWS의 서버에 접속할 수 있습니다. 이때 맥 터미널에서 이를 시도하려면 어떻게 해야 하는지 정리해둡니다. 일단 터미널을 열고, pem 파일이 있는 디렉토리로 이동하는 명령어를 입력합니다. 그런 다음 pem 파일의 권한을 변경해주고, 소유자에게 읽기 권한을 부여해주는 명령어를 수행합니다. 읽을 수 있어야 인증도 할 수 있기에 이렇게 해주는 것으로 사료됩니다(ㅋㅋ). 마지막으로 서버 인스턴스에 대한 원격 제어를 위해 SSH 프로토콜을 통한 접..