<aside> ⚠️ OpenSSH를 사용하여 EC2 인스턴스에 연결하는 것은 파일질라를 사용하여 파일을 전송하는 것과는 별개의 작업이다. 이 두 가지 작업은 서로 다른 목적으로 수행한다.
따라서 각각은 서로 다른 목적으로 사용되며, 일반적으로는 두 가지 작업 모두 필요한 경우가 많다. 예를 들어, 애플리케이션 코드를 EC2 인스턴스에 배포하기 위해 FileZilla를 사용하여 파일을 업로드하고, 그런 다음 SSH를 통해 EC2 인스턴스에 로그인하여 애플리케이션을 실행하는 명령어를 실행할 수 있다.
</aside>
EC2 인스턴스에 jar파일을 업로드하더라도 바로 애플리케이션을 실행시킬 수는 없다. 왜냐면 가상의 운영체제(여기서는 Amazon Linux)는 현재 비어있기 때문에 자바 개발 도구인 JDK가 없기 떄문이다. 따라서 cmd 상에서 JDK 설치 명령어를 실행시켜야 한다.
[ec2-user@ip-172-31-44-25 app]$ sudo apt update
sudo: apt: command not found
[ec2-user@ip-172-31-44-25 app]$
위와 같이 sudo apt 명령어는 사용할 수 없다. 대신, sudo yum 명령어를 사용하여 패키지를 설치해야 한다.
[ec2-user@ip-172-31-44-25 app]$ sudo yum install -y java-11-amazon-corretto-devel

이제 정상적으로 설치가 진행된다. JDK 설치에 성공하면 다음과 같은 로그가 출력된다.

성공적으로 SSH로 EC2 인스턴스에 접속했다면, 이제 jar 파일을 실행할 차례다. cd 명령어를 사용하여 jar 파일이 업로드된 디렉토리로 이동한다. 여기서부터는 파일질라에 설정한 디렉토리 내에서 이동하는 것이다.
jar 파일이 있는 디렉토리에 이동
cd /home/ec2-user/app
jar 파일을 실행.
java -jar MongBitProject-0.0.1-SNAPSHOT.jar
이 명령어는 터미널 세션이 열려 있는 동안에만 jar 파일을 실행시킨다. 터미널 세션이 닫히면 jar 파일의 실행도 중지된다. 따라서 nohup 명령어와 &를 함께 사용하여 백그라운드에서 계속 실행되도록 할 수 있다.
nohup java -jar MongBitProject-0.0.1-SNAPSHOT.jar &