AWS/입문

AWS - 웹 서버 기초 환경 구성

2021. 12. 14. 22:54
# 필요 패키지 설치
sudo yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

이전 시간에 웹 환경 구축을 위한 http의 80, https의 443 포트를 개방하였다.

이번에는 node.js 소스코드 배포를 해보겠다

 

참고로 본인은 node.js 들어보기만 했고 처음 알아버렸다.

쉽게 설명해 javascript 엔진으로 만들어진 플랫폼? 정도로 이해하면 되는거 같다.

 

마치 게임을 개발할 때는 cli 환경으로된 검은창에서 시작하는것이 아닌듯이 게임을 개발할 때 큰 틀이 되어주는 유니티엔진, 언리얼 엔진, 크라이 엔진 등과 같이 큰 틀이 되어 주는것이다. 이 위에 javascript로 만들어진 애플리케이션들을 실행 할 수 있다. javascript 버전 API 같은 느낌이랄까.... 아마 이 글을 보고있는 독자라면 javascript가 it 업계에 큰 영향을 끼치는 정도는 잘 알고 있을것이다 ! (나는 잘 모르겠지만! ) 넷플릭스, 월마트, 이베이 등 큰 회사들이 node.js를 통해 서비스를 운영한다고 한다. 

 

아마 우린 node.js를 통한 깊이 있는 실습을 하진 않을터이니 알아두기만하자 

 

우선 ssh로 인스턴스에 접속을 하겠따

그리고 nvm을 통해 Node.js를 다운받아보겠따

 

#nvm 링크로 설치 (nvm= Node.Js 버전 관리 매니저)
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
 # 설치 받은 nvm 실행
 . ~/.nvm/nvm.sh
#nvm을 통해 원하는 버전 설치
 nvm install 10.13.0
#node.js 설치 확인
node -e "console.log('Running Node.js ' + process.version)"

nvm을 다운 -> nvm 실행 -> nvm으로 node.js 설치 -> 설치 확인

몬가 잘 된듯하다

여기서 주목 할 것은 10.13.0으로 설치를 했고 이를 확인했다는것

 

 이제 node.js를 통한 코드 실행이 가능한 환경을 만들었으니 서버가 코드를 배포 할 수 있도록 해주겠다

깃허브에 있는 소스코드를 받아서 사용하겠다

# 필요 패키지 설치
sudo yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel

많이 좌라라락 쏟아 질 것이다.

하나하나 세세히 짚고 넘어가는 사람은 아니지만 근근히 봐왔던 패키지이기에 짚고 넘어가보겠다

 

curl-devel : curl 명령어로 가져온 파일 컴파일하는 패키지

expat-devel: expat 헤더 파일을 통한 개발환경 패키지

gettext-devel: gettext(GNU 프로젝트 환경?)을 통한 개발 패키지

openssl-devel: 네트워크 통신 개발환경 패키지

zlib-devel: 압축 알고리즘 개발환경 패키지

 

몇 개는 급하게 찾아본것이라..ㅠㅠ 그런 느낌이구나 하고 넘겼다...

오류가 있는 부분은 차차 수정하겠습니다.

 

설치되었겠지만 센스있게 확인까지

이제 git에서 소스코드를 받을 수 있는 환경을 만들쟈

 

cd /var
# 소스코드 배포 디렉터리 생성
sudo mkdir www
# root에서 소유권을 ec2-user로 바꿔줘야한다고한다
sudo chown ec2-user www

기존에는 root root로 되어 있지만 ec2-user가 배포해야하기 때문에 위 명령어로 소유권을 변경해주자

요론식으로

 

깃 패키지를 통해 깃허브의 소스코드를 다운

# 소스코드 다운받는 경로 변경
cd /var/www
git clone https://github.com/deopard/aws-exercise-a.git

cd aws-exercise-a

아까와 같은 좌라라락은 아니지만 잘 다운 받아진 모습이다.

 

node.js는 범위가 넓은 플랫폼이다보니 규모가 큰 만큼 패키지가 많아 의존성 패키지가 많은듯하다

그러므로 의존성 패키지를 관리해주는 npm( node package manager)를 다운 받아 방금 깃헙에서 다운 받은 소스코드의 필요 의존성 패키지를 설치해주겠다.

npm install

아마 경로를 지정했기에 이를 인식하고 .json 파일을 인식하여 필요한 패키지를 다운받는 방식인듯하다.

 

다음에는 웹 서버와 웹 애플리케이션 서버를 알아보고 실습해보겠다

'AWS > 입문' 카테고리의 다른 글

AWS - 웹서버, 웹 애플리케이션  (0) 2021.12.20
AWS - HTTP, HTTPS 보안그룹 포트 추가하기  (0) 2021.12.12
EC2 SSH 접속  (0) 2021.12.08
AWS 인스턴스  (0) 2021.12.08
About EC2 (EC2에 대해)  (0) 2021.12.07