ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • NodeJS - Express 웹 서버 구성 (1)
    개발/JS 2021. 2. 14. 01:13

    Windows 10 환경에서 Docker 및 Nginx로 웹 서버 구성하기 (1)

    Windows 10 환경에서 Docker 및 Nginx로 웹 서버 구성하기 (2)

     

     

    이전 글에서는 도커와 Nginx를 이용해서 웹 서버를 올려보았다. 이 후 웹 어플리케이션을 개발하고 DB와 연동하는 학습을 진행한다 하였고 확실한 어플리케이션 개발을 위해서 환경을 아예 AWS로 옮겼다. AWS의 LightSail에 NodeJS를 올려서 진행하였다.

     

    또.. 자바스크립트 기초 문법을 공부하다가 바로 넘어온 것도 그냥 여기저기 문서 읽고 책 읽고 하기보단 그냥 무작정 해보자! 라는 생각으로 진행했다. 이전 글의 연장선이라 생각하고 개발할 것이다. 몰랐던 거 알게되면 적어주면 되겠지.

     

    우선 기본적으로 필요한 모듈 및 패키지의 설치를 진행하였다.

    npm install mongoose
    npm install mysql
    npm install express
    npm install express-session
    npm install ejs
    
    options
    --save : package.json에 추가
    -g : 글로벌로 설치

     

    MongoDB(몽고DB)를 활용한 어플리케이션, MYSQL을 활용한 어플리케이션 2가지를 진행해보려한다.

    몽고DB는 아래의 문서를 참고해서 설치를 진행하였다.

    https://docs.mongodb.com/manual/installation/

     

    Install MongoDB — MongoDB Manual

    Install MongoDB MongoDB is available in two server editions: Community and Enterprise. MongoDB Atlas MongoDB Atlas is a hosted MongoDB service option in the cloud which requires no installation overhead and offers a free tier to get started. This section o

    docs.mongodb.com

    MYSQL은 아래와 같이 설치하였다.

    wget http://repo.mysql.com/mysql-apt-config_0.8.13-1_all.deb
    sudo dpkg -i mysql-apt-config_0.8.13-1_all.deb
    
    mysql에서 OK
    
    sudo apt-get update
    sudo apt-get install mysql-server
    sudo systemctl restart mysql.service
    
    sudo mysql_secure_installation

    마지막 mysql_secure_installation은 보안 관련 옵션이었다. 필요하다면 설치해도 되지만 일단 설정해보았다.

     

     

    위와 같이 기본적인 설치 및 설정이 끝난 후의 디렉토리는 아래와 같다.

    APPLICATION
    │
    ├─ node_modules : 모듈 디렉토리
    ├─ routes : 기능 파일 디렉토리
    ├─ static  
    │	├─CSS
    │	└─image
    ├─ view : .ejs 파일 디렉토리
    └─ server.js : 서버 구동 파일

     

    기본적인 디렉토리를 이렇게 설정했고 앞으로 웹 서비스를 구성해가면서 계속 추가될 것이다.

     

    가장 먼저 제일 기본적인 웹 서버를 작동시켜보았다.

     

    /* === server.js === */
    
    const express = require('express');
    const server = express();
    
    server.get('/', (req, res)=>{ 
      res.send('Server On!');
    });
    
    server.listen("7000",() =>{
        console.log("Server start...");
    });

    보통 app이라는 키워드를 많이 쓰던데 나는 이후 몽고DB를 활용한 웹 서비스와 구분하기 위해 server라고 하였다.

    변수도 var가 아닌 let이나 const를 이용하라는 조언을 듣고 그 둘을 애용 중인데... 그 이유는 진행하면서 찾아봐야겠다.

     

    하튼 위와 같이 파일을 생성하고 해당 파일이 있는 위치에서 node server.js라는 명령어를 작성해주면 서버가 구동된다.

    nodemon이라는 방법도 있는데 이 또한 추후 사용해보겠다.

    '개발 > JS' 카테고리의 다른 글

    Node.JS - Axios를 활용한 HTTP 요청  (1) 2022.02.02
    Javascript 기초 (1)  (0) 2021.01.28

    댓글

Designed by Tistory.