ncloud express 서버 배포하기

mminjg·2021년 10월 20일
2

어쩌다보니 서버를 다시 만들어야 할 상황이 생겨 작성하게 되었다.😅
기왕 다시하는거 적어가며 해보기로..

서버 생성하기

서버 설정

타입과 요금제를 선택한다.

인증키 설정

인증키가 있으면 위를 선택하고 아니면 새로운 인증키를 생성한다.

네트워크 접근 설정

신규 ACG를 다음과 같이 설정한다.
ssh 접속 22번 포트, express 포트 3000(or 설정한 포트)을 추가해준다.

관리자 비밀번호 확인


서버 인스턴스를 오른쪽 클릭하면 관리자 비밀번호 확인이 있다.
서버를 생성할 때 받았던 .pem 파일을 넣으면 관리자 비밀번호를 확인할 수 있다.
초기 서버 접속에 필요하니 복사해두자.

서버 접속하기

포트 포워딩 설정

콘솔에서 포트 포워딩 설정을 눌러 외부 포트를 설정해준다.
설정한 포트로 ssh접속을 할 수 있게 된다.

PuTTy로 서버 접속

포트 포워딩 정보에 나와있는 서버 접속용 공인 IP와 아까 설정한 외부포트 1025번으로 putty 접속을 해보자.


host name에 위의 서버 접속용 공인 IP, port에 외부포트 1025번을 입력하고 open을 누른다.
root로 로그인하고, 아까 저장한 관리자 비밀번호를 붙여넣기한다.

접속에 성공했다.
비밀번호는 변경해도 되지만, 그대로 두고 ssh key로 접속하는 것이 좋다.

공인 IP, ssh key로 접속하기

공인 IP 신청

Classic / Server / Public IP 메뉴로 이동하여 공인 IP를 신청한다.

서버 공인 IP 자리에서 확인할 수 있다.

ssh key 생성

PuTTYgen을 통해 ssh키를 생성한다.

  • 'Number of bits in a generated key:' 값을 2048에서 1024로 변경한다.
  • generate버튼을 누르고 생성한다.
  • 네모칸에서 마우스를 움직이면 생성된다.

private key는 내 컴퓨터에 저장하여 putty에 설정하고, public key는 서버의 ~/.ssh/authorized_keys 에 추가하면 ssh키로 접속할 수 있다.

mkdir -p ~/.ssh
cat >> ~/.ssh/authorized_keys << EOL

.ssh 폴더를 만들고 cat 명령어를 입력하고 public key를 붙여넣는다.

포트 포워딩 설정 해제하기

공인 IP를 이용하려면 아까 설정한 포트 포워딩 설정을 해제해야한다❗❗
공인 ip와 포트 포워딩을 동시에 사용하면 포트 포워딩에 먼저 할당되기 때문에 공인 IP에서 해당 포트 사용이 불가능하다고 한다.

PuTTy에서 ssh key로 서버 접속하기

host name에root@공인ip주소를 입력하고 port는 ssh접속을 위해 22를 입력한다.

카테고리에서 Connection / SSH / Auth 를 누르고, private key file for authentication에 아까 생성한 private file을 넣는다.

saved sessions에 이름을 저장하고 save를 누르면 다음에 편하게 접속할 수 있다.
이제 open을 누르면

로그인 없이 바로 접속되는 것을 확인할 수 있다.

패키지 설치하기

git 설치

apt-get update
apt-get install
git --version

깃을 설치하고 버전을 확인한다.

node, npm 설치

apt-get install curl

curl을 설치한다.
curl은 서버와 통신할 수 있는 커맨드 명령어 툴이며, 다양한 프로토콜을 지원한다.
url을 가지고 파일을 다운받을 수 있다.

curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
source ~/.profile
nvm -v

nvm을 설치한다.
환경변수를 반영하고 nvm 버전을 확인한다.

nvm install --lts
node -v
npm -v

node를 설치하고 버전을 확인한다.
nvm use 버전으로 버전을 변경할 수 있다.

pm2 설치

npm install pm2@latest -g
pm2 -version

pm2를 글로벌로 설치하고 버전을 확인한다.

저장소 가져오기

github ssh key 생성

cd ~/.ssh
ssh-keygen -t ed25519 -C "your_email@example.com"

.ssh로 이동해서 key를 생성한다.

두개의 키가 생성되었다.

cat id_ed25519.pub

을 실행하여 내용을 복사하여 github에 등록해주자.

github에 ssh key 공개키 등록

SSH keys / Add new 에서 공개키를 등록한다.

ssh 접속 설정

vi config

Host github.com
        User git
        Hostname github.com
        IdentityFile ~/.ssh/id_ed25519

.ssh에 config파일을 만들어 다음 내용을 추가한다.

ssh -T git@github.com

github 접속 테스트를 해본다.

인증에 성공하면 GitHub ID 출력을 확인할 수 있다.

git clone

git clone git@github.com:<깃허브아이디>/<저장소이름>.git
cd <저장소이름>
npm install

저장소를 clone하고, 패키지를 설치한다.

pm2로 서버 실행하기

pm2 start ./bin/www

서버를 실행한다.

pm2 start npm -- start

npm script가 있다면 pm2 start npm -- start 로 실행할 수 있다.

참고자료

ncloud 사용 가이드
Naver NCloud로 Express서버 배포하기 - 2
GitHub 접속 용 SSH 키 만드는 방법

0개의 댓글