[사이트 구축] 서버 구축하기

Poo·2021년 12월 22일
0

자 이제 서버를 만들어보겠다.

폴더생성

우선 프로젝트를 진행할 폴더를 하나 만들어 보자.

프로젝트 서버 안은 이렇게 구성이 된다.

터미널을 열고

cd (Project 파일 명)
cd server
npm init

뭐 여러가지 치라고 하는데 다 필요없다 무한엔터

그러면 package.json 이 생성이 됐을 것이다.

다음 해당 폴더 터미널에서

code .

코딩

해주고 vscode 에서 index.js 파일을 하나 만들어주자
vscode 내 터미널을 쓰던 폴더 내 터미널을 쓰던

npm install express --save

그리고 index.js에

const express = require('express')
const app = express()
const port = 3000


app.get('/', (req, res) => res.send('Hi')
app.listen(port, () => console.log(`example app listening on port ${port}!`))

복붙! 위 코드는 잘 작동하는지 보는 예제 코드이다.

다음은 package.json으로 넘어가서

"scripts" 부분 수정을 조금 하자

"scripts": {
    "start": "node server/index.js",
    ...
    }

package.json은 루트 폴더에 존재한다.

이제 몽고 디비와 연결을 위해 다음을 인스톨 한다

npm install mongoose --save

index.js 부분 추가

const express = require('express')
const app = express()
const port = 3000
const mongoose = require('mongoose')

app.get('/', (req, res) => res.send('Hi'))
app.listen(port, () => console.log(`example app listening on port ${port}!`))

const mongoose = require('mongoose')
mongoose.connect(config.mongoURI
).then(() => console.log('MD'))
.catch(err => console.log(err))

mongoURI는 개인 정보이기 때문에 깃에 올릴때 같이 들어가면안된다. 그래서 따로 폴더를 만들어준다.

서버 폴더에 config 폴더를 추가해주자!

안에는 dev.js 파일을 하나 만들어주고

module.exports = {
	mongoURI: '(이전 블로깅에서 복사해뒀던 것을 붙혀넣자)'
   }

mongoURI 부분을 살펴보면
mongodb+srv://(나의 아이디):(나의 비밀번호)@(나의db명.ouvru.mongodb.net/myFirstDatabase?retryWrites=true&w=majority

이렇게 복사를 해왔을텐데 나의 비밀번호 부분만 고쳐주면된다. 비밀번호는 몽고디비 비밀번호이다.

mongoURI 부분을 가져오는 방법은 다음 링크와 같다.

mongoURI 가져오기

config폴더 내에 key.js 파일과 prod.js 파일을 추가해주자

로컬환경과 배포 이후 관리를 위해

key.js

if(process.env.NODE_ENV === 'production') {
    module.exports = require('./prod');
} else {
    module.exports = require('./dev');
}

prod.js

module.exports = {
    mongoURI: process.env.MONGO_URI
}

추가해주자.

여기까지했으면 다시

index.js 추가 및 전문

const config = require('./config/key'); //추가
const port = 5000
const express = require('express')
const app = express()

const mongoose = require('mongoose')
mongoose.connect(config.mongoURI
).then(() => console.log('MD'))
.catch(err => console.log(err))

app.listen(port, () => console.log(`Ex ${port}!`))

자 이렇게 하면 서버단과 데이터 베이스 연결이 끝났다.

npm start를 해주면 끝!!

이후에는 로그인 로그아웃 회원가입 토큰생성 등에 대하여 블로깅 하겠다. 언제가 될지는 모르겠으나

다들 메리크리스마스~

profile
죽을 때 까지 공부하다 죽을 인생, 로봇공학자에서 블록체인 개발자가 되기 까지

0개의 댓글