virtualbox로 가상머신을 사용한다.(www.virtualbox.org/wiki/Download_Old_Builds_6_0)가서 확장팩(extension??)도
그리고 나서 ubuntu 18.04 버전 다운로드(releases.ubuntu.com/18.04/)
###########################################
계정생성
user1
1234
자동으로 로그인 체크
###########################################
$ sudo apt update => update
$ sudo apt install net-tools => 서버 주소 확인
$ ifconfig => 아이피 주소 확인
###########################################
원격 접속 가능한 환경 만들기
$ sudo apt install ssh -y => ssh 설치
$ sudo service ssh start => ssh 구동
###########################################
방화벽 열기
$ sudo ufw enable =>방화벽 활성화
$ sudo ufw allow 22 => 22번 포트 열기
$ sudo ufw status => 열린 방화벽 확인
###########################################
클라이언트 프로그램(mobaxterm.mobatek.net/download.html)
###########################################
# 톰캣 설치하기
$ sudo apt install openjdk-8-jdk-headless => java 8 설치하기
$ java -version
파일확인 : apache.mirror.cdnetworks.com/tomcat/tomcat-9/
그리고 다시 우분투로 와서
$ wget apache.mirror.cdnetworks.com/tomcat/tomcat-9/v9.0.36/bin/apache-tomcat-9.0.36.tar.gz
이렇게 해당주소를 복붙
$ tar -xvf apache-tomcat-9.0.36.tar.gz (*ESC키 두번 누르면 자동완성됨.)
$ mv apache-tomcat-9.0.36 tomcat9
$ cd tomcat9
$ cd bin
$ ls
$ ./startup.sh
$ sudo ufw allow 8080 => 8080번 포트 열기
$ sudo ufw status => 열린 방화벽 확인
############################################
# nodejs 설치하기
$ sudo apt update
$ sudo apt install build-essential
$ sudo apt install curl
$ curl -sL deb.nodesource.com/setup_10.x | sudo -E bash-
$ sudo apt install nodejs
$ node -v =>버전확인
$ npm -v
############################################
# nodejs express프로젝트 생성하기
$ cd ~ => 홈폴더로 이동
$ pwd => 현재 폴더 위치 확인
/home/user1
############################################
$ sudo npm install express-generator -g => express 프로그램 다운로드
$ express -e node01 => node01 프로젝트 생성하기
$ ls => 파일목록확인
$ cd node01
$ sudo npm install => 라이브러리 설치
$ sudo ufw allow 3000 => 3000번 포트 열기
$ sudo ufw status => 열린 방화벽 확인
비권장 : $ npm start => 서버구동 (비권장 불편함)
nodemon => 소스코드가 바뀌면 자동으로 서버를 재시작해줌(SpringBoot할때 build.gradle디렉토리에서 dependencies { developmentOnly 'org.springframework.boot:spring-boot-devtools' } 에 있던 SpringBoot Dev tools가 같은 역할을 하는 놈인듯
크롬에서 192.168.0.48:3000 웹서버 구동확인 (포트번호 3000)
#################################################
cors 라이브러리 다운로드(npm으로)
$ cd /home/user1/node01 => 폴더 이동
$ npm install cors => jar라이브러리 받기
#################################################
//파일명: routes/member.js
var express = require('express');
var router = express.Router();
router.get('/', function(req, res, next) {
res.json({name:'홍길동', age:34, tel:"010-0000-0001"})
res.end()
});
router.get('/test1', function(req, res, next) {
res.json({ret:1, data:{name:'가나다', age:24, tel:"010-0000-0002"})
res.json(data)
res.end()
});
module.exports = router;
###############################################
//파일명: app.js
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
// npm install cors를 설치한 라이브러리 소스코드에 적용
var cors = require('cors')(); //추가
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
//route의 js파일을 가져옴
var memberRouter = require('./routes/member'); //추가
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(cors); //cors라이브러리 사용설정 //추가
app.use('/', indexRouter);
app.use('/user', userRouter);
app.use('/member', memberRouter); // 추가
// Router가 스프링부트에서 Controller
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
});
// error handler
app.use(function(err, req, res, next) {
//set locals, only providing error in development
res.local.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {} ;
// render ther error page
res.status(err.status || 500);
res.render('error');
});
module.exports = app.;
'운영체제' 카테고리의 다른 글
[Linux] fork (0) | 2020.08.06 |
---|---|
[리눅스] 2020-07-14 도커 메모 (0) | 2020.07.14 |
[운영체제] 운영체제 구조 및 역할 (0) | 2020.06.30 |
[운영체제] OS역사 (0) | 2020.06.26 |
[운영체제] 스레드와 프로세스 (0) | 2020.06.01 |