Server

[Server]프로젝트 배포 진행

효진인데요 2023. 9. 11. 14:14

 

 

1. 깃허브 레파지토리 생성

 

2. vs코드 git bash에서 git init으로 초기화 한 뒤 생성한 레파지토리 연결

 

git init
git remote add origin [github repository url]
git add .
git commit -m "init"
git push origin main

 

-> 프로젝트 배포 시에는 파일 위치로 이동하면 될 듯

 

 

3. putty 열어서 저장되어 있던 계정 연결하고 로그인

IP 주소 확인 : 

NCP 접속 -> console -> server -> server에서 "공인" IP 주소 확인

 

4. putty에서 git clone 

 

deployment-pj  form 이게 올라가야 하는 파일 이름

 

 

5. 아래 작업 실행

 

1) sudo apt install nodejs # ubuntu에 node 설치

 

이때

이렇게 뜨는 경우 sudo apt update로 업데이트 한 번 실행 후 진행

 

 

2) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

# pm2 모듈 설치를 위해서는 node 버전이 최소 14 이상이어야 해서 nvm 모듈 설치

 

source ~/. bashrc # nvm 활성화

nvm -v # nvm 버전 확인

node -v # node 버전 확인

 

 

6. node 버전 nvm 사용해서 높여주기

 

 

# 다음 중 한 가지로 노드 설치
$ nvm install node  # 최신 버전 설치
$ nvm install --lts # 최신 LTS 버전 설치
$ nvm install 16.14.0  # 특정 버전 설치
$ nvm install 16  # 특정 버전 16의 최신 릴리즈 설치

 

# 현재 설치된 node 버전 목록 확인
$ nvm ls

 

 

# 설치한 노드 버전으로 변경
$ nvm use 16.14.0

 

 

7. ncp ACG 설정에서 프로젝트 실행하는 포트 번호 열기

 

NCP server -> ACG -> ACG 설정 -> 추가 -> 변경사항 저장

 

8. mysql  설치

apt install mysql-server

중간에 비밀번호 입력창 나오면 설정하면 됨

 

9. mysql 입력해서 mysql 접속

 

# mysql 서버에 접속해서 sesac 데이터베이스, user 유저(비번: 1234) 생성

 

-- sesac 데이터 베이스 생성
create database sesac character set utf8 mb4 collate utf8 mb4_unicode_ci;

 

-- user 계정 생성하기 (비밀번호 1234)
CREATE USER 'user'@'%' IDENTIFIED WITH mysql_native_password BY '1234';

 

-- user 계정에 모든 권한 부여
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' WITH GRANT OPTION;

 

-- 현재 사용 중인 mysql 캐시 지우고 새로운 설정 적용
FLUSH PRIVILEGES;

 

-- 생성된 계정 확인
SELECT host, user from mysql.user; (편집됨) 

 

-- mysql 종료

exit

 

 

10. 무중단 서버 배포를 위한 모듈 설치 (전역 설치)

npm install pm2 -g

 

11. cd @@ 으로 프로젝트 위치로 이동하고 npm i로 node-modules 다운로드

 

 

 

12. 프로젝트 실행

 

 

공인 IP : 포트번호로 접속하면 프로젝트가 정상적으로 뜬다.

 

 

 

 

13. pm2 모듈 명령어 모음

 

$ pm2 start app.js   # status가 online 상태라면 실행 중
$ pm2 start app.js --watch   # 소스 고치고 프로그램 재시동 자동화$ pm2 monit # 프로세스 감시
$ pm2 list # 프로세스 목록 확인$ pm2 stop [name]   # name으로 프로세스 중단 (status가 stopped로 변경)
$ pm2 stop [id]   # id로 프로세스 중단
$ pm2 kill # pm2 자체를 종료$ pm2 log   # 로그 확인 (재시동 자동화 시 에러 메시지 확인 시 유용)

 

728x90

'Server' 카테고리의 다른 글

[Powershell] amplify 명령어 ExecutionPolicy 오류  (0) 2024.02.09
압축(ZIP) 폴더 오류 / 해결방법  (3) 2023.12.04
[Web] 쿠키와 세션  (0) 2023.09.04
[HTTP] get post 개념과 차이점  (0) 2023.08.18
[서버] IP와 URL  (0) 2023.08.08