기존의 웹 기술 프로젝트의 SW 개발 비서의 기능과 웹 + 디자인의 SNS적인 부분을 융합하여 자신의 포트폴리오를 관리하고 피드백이 가능한 개발자 커뮤니티
local에서 프로젝트 실행을 위해 필요한 tools
- Node.js - Node.js 홈페이지 ver. Window
- Vue.js - Vue.js 공식문서
- Git - git 다운로드 & 프로젝트 clone ver. Window
- Maven - Maven 다운로드 - 설정방법
-
backend - IDE환경 Maven, Spring boot 백엔드 서버
-
frontend - vue.js를 이용한 프론트 package
- node.js 다운로드(설치방법 완료 후 verson 확인)
$ npm --verson- frontend/ 안에서 package 설치
$ npm install- vue project package build
$ npm run build- spring boot project package를 모두 묶어(front project 포함) jar, 또는 war로 배포
- 해당 프로젝트는 .war로 배포 (jar은 context-path를 찾지 못 함배포하면 홈 화면 접속 불가)
WinSCP설치
-
WinSCP는 마이크로소프트 윈도용으로 개발된 자유 및 오픈 소스 SFTP, SCP 및 FTP 클라이언트
-
git bash로 aws ubuntu작업하는 것이 불편하기 때문에 설치
-
다운로드 사이트(클릭시 바로 다운)
-
설정 방법
- SCP 프로토콜 선택, 호스트 ip입력, 사용자이름에 ubuntu 입력
-
고급 선택
-
인증, 파일 선택 클릭(.pem 파일 넣어야함)
-
모든 개인키 파일 선택
-
.pem 파일을 .ppk로 바꾸어 줌 → 확인 클릭
-
변환된 키 저장하고 cert.ppk 파일 선택
-
아래 윈도우 창이 뜨면 성공
- 왼쪽이 내로컬 pc, 오른쪽이 원격(aws 서버)
- home/ubuntu/ 하위 폴더 아래에 .war 배포
database 설정 Local에 데이터베이스 서버가동(자기 컴터 항상 켜둬야함)
-
aws에 mysql 설치 후 통으로 db server까지 배포 할려고 했으나 권한? 아니면 버전 문제로 mysql 명령어가 하나도 안먹힘..그래서 spring boot war파일만 aws 배포하고 db는 로컬 서버에 둬야함
-
db 계정을 하나 파줘야 한다. 외부에서 접속 하려면 모든 아이피로 접속 가능하게 또는 1개 아이피만 접속가능하게 aws에서만 접근 가능하도록 하는 것이 안전
-
1년 300$ 무료
-
구글 계정있으면 그냥 쌉가능
-
구글 클라우드 플랫폼 프로젝트 생성 → sql 콘솔에서 mysql 인스턴스 생성
-
더하기 클릭
-
아래 사진에 표시해둔 순서대로 클릭
-
연결 클릭
-
구글 mysql 서버는 public ip 사용 함으로 해당 ip로 접근한다는 것을 알려 줘야함
-
새 네트워크로 접속하려는 ip주소 입력 → ipv4 형식의 ip 주소 넣어야함
-
만약 배포했을 때 db서버와 WAS 서버가 다른경우 WAS서버가 배포되고 있는 컴퓨터의 ip를
구글mysql서버에다가 등록해주어야 함
-
aws host 입력하면 됨
front vue.js package Spring boot에 배포
- src/main/ 아래에 webapp 폴더 생성 후 dist파일 안 내용 전부 넣기 (아래 사진처럼)
- front + back 전부 war로 묶어서 배포함
Spring boot .war로 package
주의: .jar으로 배포하게되면 context-path 못 찾음
- 위 사이트 그대로 따라하면 됨
- 프로젝트 오른쪽 마우스 클릭
- run as → 4.maven build → package로 설정하고 빌드 시작
- target 폴더에 .jar .war 모두 원격으로 파일 보내야함
ssh 터미널 종료후에도 Server 가동 하는 방법
-
nohup: 리눅스 명령어 중 백드라운드로 가동하는 방법
-
&: 프로세스 pid 확인가능
$ nohup java -jar '.war 파일명' & $ [1] process PID $ kill pid
static 문서 관리 및 배포
-
application.properties에 해당 코드 입력
spring.mvc.static-path-pattern=/** spring.resources.static-locations=file:/home/ubuntu spring.resources.add-mappings=true
context path경로를 지정해주고 정적인 문서를 위 해당경로에 넣어주고 배포












