커밋4. 포털 실행 방법 ts-node로 시작하게 변화: 실행 속도 향상

This commit is contained in:
kimilguk
2023-06-06 13:31:22 +09:00
parent 3af8a46d83
commit 96098869a8
3 changed files with 40 additions and 1 deletions

View File

@@ -7,7 +7,7 @@
"npm": "6.14.7" "npm": "6.14.7"
}, },
"scripts": { "scripts": {
"dev": "next dev", "dev": "ts-node --transpile-only --project tsconfig.server.json server/index.ts",
"dev:sm": "SITE_ID=3 npm run dev", "dev:sm": "SITE_ID=3 npm run dev",
"dev:lg": "SITE_ID=2 npm run dev", "dev:lg": "SITE_ID=2 npm run dev",
"dev:smWin": "set SITE_ID=3&&npm run dev", "dev:smWin": "set SITE_ID=3&&npm run dev",

View File

@@ -0,0 +1,30 @@
import { loadEnvConfig } from '@next/env'
import express, { Request, Response } from 'express'
import next from 'next'
loadEnvConfig('./', process.env.NODE_ENV !== 'production')
const port = process.env.PORT || 3000
const dev = process.env.NODE_ENV !== 'production'
const app = next({ dev })
const handle = app.getRequestHandler()
const startServer = async () => {
try {
await app.prepare()
const server = express()
server.all('*', (req: Request, res: Response) => {
return handle(req, res)
})
server.listen(port, (err?: any) => {
if (err) throw err
console.log(`> Ready on localhost:${port} - env ${process.env.NODE_ENV}`)
})
} catch (error) {
console.error(error)
process.exit(1)
}
}
startServer()

View File

@@ -0,0 +1,9 @@
{
"extends": "./tsconfig.json", // 기본설정을 포함한다
"compilerOptions": {
"module": "commonjs", // commonJs 사용하도록 override
"outDir": "dist", // 빌드 파일 경로 (production mode)
"noEmit": false // 서버에 대한 결과 파일을 내보내지 않음 (production mode)
},
"include": ["server"] // server/ 디렉토리 아래에 있는 파일만 컴파일 (production mode)
}