일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- express router
- 라우트 매개변수
- nodejs파일업로드
- OAuth 카카오
- 라우터와 미들웨어
- node.js path
- express session
- 블록 만들기
- 아이디 중복체크기능
- next 매개변수
- 비동기파일업로드
- mysql wsl
- useEffect clean up
- ws 라이브러리
- Uncaught Error: could not find react-redux context value; please ensure the component is wrapped in a <Provider>
- 시퀄라이즈 기본설정
- JWT 하드코딩
- 라우터미들웨어 분리
- cookie-parser 만들어보기
- express.static
- 라우터 분리
- JWT 만들어보기
- useContext
- FormData()
- express실행
- css기초
- javascript기초
- 세션으로 로그인 구현
- buffer.from
- JWT 로그인 기능 구현
- Today
- Total
즐코
Ubuntu - Node.js 설치 및 실행해보기 본문
#1. Ubuntu (linux) 접속하기
Powershell을 실행시키면, 아래 스크린 샷에서 wsl 치기 전엔 PS C:\Users\leeyj 에 위치해 있었다.
즉, 아직 리눅스(우분투)가 아닌 윈도우의 C드라이브\사용자\leeyj(내계정) 에 위치 중이다.
이 때 wsl 을 입력하면,
welcome to Ubuntu 가 뜨면서 초록색 글씨로 leeyj라는 리눅스(우분투) 계정에 접속해있음을 알 수 있다.
leeyj@DESKTOP-K4UC22N:/mnt/c/Users/leeyj$
: (colon) => 이 콜론표시가 구분값 역할을 해주는데,
그 뒤로 나오는 /(slash) 부터가 directory 쉽게 말하면 폴더의 위치, 경로를 알려준다.
즉, 지금 나는 mnt 안에 있는 c 드라이브 안에 있는 Users(사용자) 안의 leeyj 라는 directory 안에 있는 것이다.
#2. Node.js를 설치해볼까?
Node.js란 ?
html, css를 거쳐 javascript에 대해서 배웠었는데,
본질로 돌아가서 이 html,css를 움직이게 도와주는 js 해석을 누가 해줄까에 대한 생각을 해보자..
그것은 바로, 브라우저 자체에 내장된 JS 해석엔진들이다.
Chrome, Edge, Firefox 등 각 브라우저들은 자신들만의 js 해석엔진들을 가지고 있다.
그 중에서도 대표적으로 chrome의 V8 엔진이 있는데, 크롬이 빠른 이유가 js 해석하는데 성능이 좋아서라고 한다.
이렇게 성능좋은 V8 엔진을 기반으로 만들어진 게 node.js 고, 브라우저 외의 공간에서도 JS를 실행할 수 있게 해준다.
그래서, Node.js 홈페이지에 들어가보면, 아래와 같은 문구가 쓰여져 있다.
** 런타임이란 뭘까?
어떤 프로그래밍언어가 돌아가는 상태, 실행환경이라고 보면 된다.
따라서, JS 런타임이란?! JS가 구동되는 환경이라고 생각하자.
JS 가 실행되는 환경 (런타임)에는 브라우저도 있고, 브라우저 외의 Node.js도 있는 것이다.
결론 : 이 Node.js에서 Javascript를 사용하여 브라우저 바깥에서 서버만들기가 가능해졌다고 생각하자.
다시 본론으로 돌아와서, 리눅스 명령어로 node를 쓰면 nodejs를 실행하게끔 만들어보자.
#1. node.js가 안 깔린 상태에서 node를 쳐보자.
(나는 cd ~ 명령어로 home의 내 계정에 들어와서 node를 쳤다)
#2. 커맨드창에 알아서 추천 멘트를 써준다. sudo apt install nodejs 가 뜰 것이다.
sudo apt install nodejs 를 쳐보자.
** SUDO가 뭐지?
SUbstitute DO의 약자
일반 사용자가 루트 권한을 임시적으로 획득하여 특정 명령을 할 수 있도록 해준다.
관리자 권한으로 실행하기 같은 뜻인듯 ㅋ
(원랜 super user do 였는데 프로그램 기능이 확장되서 substitute user do로 의미가 확장된거라고 한다.
몇몇 글을 보니 옛날엔 컴퓨터 한대로 여러 명이 같이 썼기 때문에 super user 외에 다른 사용자들이 있었을텐데 이젠 1인 1pc 이다보니 super user do에서 substitute user do로 의미가 확장된게 아닐까싶다 ㅋ )
super user do 라는건 가장 최상위 사용자, root가 실행시키는 거고,
substitute user는 다른 사용자를 의미하는데, super user(root user)가 root 권한을 준 것을 의미하는 것 같다.
생각해보니 어제 ubuntu를 처음 설치할 때 계정명/비번을 설정하지 않아서 root 계정으로 접속되었는데,
그게 그 이유인가보다.
sudo와 관련된 밈 귀여워서 가져와봤다 ㅋ
#3. 그러면 계정 설정할 때 썼던 비번을 입력하라고 뜬다.
비번을 치면 또 sudo apt update 라는 줄이 뜨고 뭔가 업데이트 하란 뜻 같아서 커맨드창에 저걸 쳤다.
(sudo apt install nodesj -> pw -> sudo apt update)
#4. Do you want to continue? 가 뜨면 Y를 누르면 설치 완료!
#5. 잘 설치 됐는지 확인하기 위해 버전 확인을 해보면 ( node -v ) v10.19.0버전이 뜬다, 설치되었다는 뜻이다.
(하지만 이건.. 옛날 버전이라 업데이트가 필요하다, 업데이트는 다음 포스팅에서 정리해야겠다)
#6. nodejs가 설치되었으니까, 접속을 해보자. node를 입력
welcome to Node.js 가 뜬다.
(아래 버전은 내가 오늘 업데이트를 해서 바뀐거니까 무시하자, 원래는 v10.19.0 이었다.)
node.js에 접속하면 브라우저의 개발자도구처럼 쓸 수 있다. 콘솔로그를 찍으면 결과물이 나온다.
#7. nodejs를 나가고 싶다면, ctrl+c 두번 눌러주기
#8. 바탕화면에 폴더를 만들어주고, 그 폴더상에서 code . 으로 VSC를 실행한 다음에 파일 하나를 저장해보았다.
이렇게 ubuntu를 통해 VSC를 실행하면 기존의 터미널 대신 VSC에 있는 Terminal을 이용할 수 있다.
아래처럼 기존 터미널이 연동되어서 나타난다.
그리고 이걸 끄고나서 다시 돌아와서 node test.js를 치면, 똑같은 결과물이 출력된다.
즉, JS를 로컬에서 해석해서 알려준다. 이게 바로 JS runtime임을 보여주는 것!
node.js 버전 업데이트는 다음 포스팅에서 ㅋ
'NodeJS' 카테고리의 다른 글
require와 exports / JS 동작원리 / 콜백함수 (0) | 2022.01.28 |
---|---|
express로 웹서버 역할 해보기 (응답하기) (0) | 2022.01.27 |
CLI 접해보기 / linux 기본 명령어 (0) | 2022.01.26 |
nvm / npm / express 설치 (0) | 2022.01.26 |
WSL2 설치 (0) | 2022.01.25 |