일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 개발자부트캠프
- 고용노동부국비지원
- IT개발캠프
- 플러터
- K디지털크레딧
- 0원코딩인강
- 국비코딩
- 러닝핏습관챌린지
- ios
- 유데미
- Flutter
- 코딩국비지원
- 인사이드아웃
- 내일배움카드인강
- 안드로이드
- 개발
- K디지털기초역량훈련
- 스나이퍼팩토리
- 국비지원파이썬
- 러닝핏
- 부트캠프
- 국비지원코딩
- 웹개발
- 앱개발
- 내일배움카드사용처
- Udemy
- 러닝핏인강
- 습관챌린지
- 웅진씽크빅
- 내일배움투어
- Today
- Total
매일 땡기는 마라 코딩
[인프런] 맛집지도 만들기 (10) 본문
비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지
비전공자를 위한 풀스택 맛집지도 만들기 프로젝트!: Front, Back-end 그리고 배포까지 - 인프런 | 강
내가 좋아하는 유튜버의 맛집지도를 만들면서 프론트엔드, 백엔드, 카카오맵 API 사용법, 배포까지 한번에 배울 수 있는 풀스택 맛집지도 강의입니다., - 강의 소개 | 인프런...
www.inflearn.com
※ 해당 링크 강의 내용을 바탕으로 작성된 포스팅입니다.
서버를 구축하자! 쉽게 이해하고 만드는 AWS 서버
클라이언트 - 서버 관계론 이해, 네트워크 필수 지식 정리
서버는 클라이언트 요청에 응답해야 한다.
클라이언트가 서버에 요청하면 서버는 Backend에 로직을 넘기고 Backend에서는 DBMS에 넘겨 저장. 응답은 반대 순서.
클라이언트: 웹, ios, Android 등
서버: Apache, Nginx, Tomcat, Express 등
Backend: ASP, JSP, PHP, Node.js, Django, spring 등
DBMS: MySQL, MSSQL, Oracle, mongoDB 등
클라이언트 요청에 필요한 것
1. 서버 주소(IP, Domain 등)
IP는 사람이 이해하기 어려운 형식이어서 Domain을 쓴다.
2. Port 번호
3. Protocol
각 프로토콜마다 주로 사용하는 포트 번호가 있음. 일반(HTTP - 80, HTTPS - 443), 관리자(SSH(터미널 접근) - 22, SFTP(파일 전송) - 22, FTP(파일 전송) - 21, MySQL(DB) - 3306) 등.
AWS EC2 인스턴스 임대, Nginx + Node.js 설치
aws에서 서버 컴퓨터를 빌리는 과정
- aws 가입 및 로그인 → EC2 서비스 선택 → 지역 서울로 바꾸기 → 인스턴스 → 인스턴스 시작 버튼 클릭 → ubuntu 18.04 선택 → 인스턴스 유형 t2.micro 선택 → 새 key pair 생성→ 인스턴스 시작
클라우드 서비스 | 클라우드 컴퓨팅 솔루션| Amazon Web Services
aws.amazon.com
컴퓨터 접근을 위해 winscp putty툴 설치.
Putty, WinSCP사용법(Window서버 putty접속하는 방법)
AWS EC2 인스턴스에 원격 접속할 수 있는 Putty와 파일을 전송할 수 있는 WinSCP 사용법에 대해 알아보자. ( 여기서 EC2인스턴스의 생성법까지 다루진 않는다. )
gunbin91.github.io
putty: SSH 프로토콜, 터미널로 접근할 수 있게 도와주는 프로그램.
winscp: FTP 프로토콜로 접근할 수 있게 도와주는 클라이언트 프로그램.
winscp와 putty 연동 방법
- winscp 실행 → 설정(Ctrl+Alt+P) → 통합 → 프로그램 → 찾아보기 → 다운로드에서 putty.exe 파일 찾이 연결
고정 IP 할당
퍼블릭 IPv4 주소는 변동되기 때문에 탄력적 IP 주소(고정 IP)를 할당.
- aws → EC2 → 네트워크 및 보안 → 탄력적 IP → 탄력적 IP 주소 할당 버튼 클릭 → 할당 버튼 클릭 → 작업 → 탄력적 IP 주소 연결 → 인스턴스 선택하고 연결 버튼 클릭
생성한 고정 IP를 winscp의 로그인 창 호스트 이름에 넣어 준다. 사용자 이름은 ubuntu.
비밀번호는 고급 → SSH → 인증 → key pair 파일찾기 → 모든 개인 키 파일로 선택해 찾기.
nginx 설치
- PuTTY에서 열기(Ctrl+P)
- 창이 뜨면 sudo su 명령어로 관리자 모드로 전환
- apt-get update 명령어로 패키지 관리자 업데이트
- apt-get install nginx 또는 apt-get install nginx -y 명령어로 nginx 웹 서버 설치
포트 열기
- 인스턴스 → 보안 탭 → 인바운드 규칙 → 보안 그룹 링크 클릭 → 인바운드 규칙 탭 → 인바운드 규칙 편집 → 규칙 추가 → HTTP, Anywhere-IPv4 선택 후 규칙 저장
- 크롬 창에 고정 IP를 입력.
Node.js 설치
- apt-get install nodejs 명령어 입력
- node -v 명령어로 버전 확인
- curl -sh https://deb.nodesource.com/setup_14.x -o nodesource_14_setup.sh 명령어 입력
- bash nodesource 적고 Tab(자동완성) 키 눌러 ppa 등록 완료
- apt-get install nodejs 명령어 입력
Ubuntu 18.04 Node.js 설치 방법
(참고 링크) distro-stable version 설치 (apt) 간단하게 apt를 이용해 설치해보겠습니다. $ sudo apt update $ sudo apt install nodejs $ sudo apt install npm 그런데 버전이 너무 낮습니다. 최신 버전을 받기 위해 PPA(Person
torbjorn.tistory.com
My SQL 환경 구축, 외부 접속하는 방법
DB 설치 및 접근
- apt-get install mysql-server 또는 apt-get install mysql-server -y 명령어로 설치
- mysql -u root -p 명령어로 mysql 접근
- password는 설정되어 있지 않기 때문에 enter 누르면 바로 접속됨
- ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '여기에 password'; 명령어로 password 생성
- exit; 명령어로mysql 나가기
- mysql 접근 및 설정한 비밀번호 확인
해당 블로그 내용 따라하니 해결.
Access denied for user 'root@'@'localhost' 해결방법
Ubuntu에서 mysql의 root계정 로그인이 안되는 경우 해결방법 ! ubuntu같은 일부 리눅스 시스템에서 mysql을 설치하고 $ mysql -u root -p 으로 로그인 시도를하면 'ERROR 1698 (28000): Access denied for user 'root'@'localh
oziguyo.tistory.com
외부접속 설정
아이디는 'root'로 해도 되지만 다른 아이디로 설정하는 것이 보안상 유리하다.
모든 IP 허용
- GRANT ALL PRIVILEGES ON *.* to 'root혹은 아이디'@'%' IDENTIFIED BY '패스워드'; 명령 입력
- flush privileges; 명령어로 변경 사항 저장
- exit; 명령어로 종료
Listen IP 대역 변경
- vi /etc/mysql/mysql.conf.d/mysqld.cnf 패키지 관리자로 설치한 mysql 설정파일 경로 입력
- ↓ 키로 'bind-address = 127.0.0.1' 찾아 i, # 눌러 주석 처리
- esc 키 누르고 :wq! 입력하여 저장하고 나가기
- service mysql restart 명령어로 mysql 재시작
※ vi 편집기 사용 시 관리자 모드로 수정하지 않으면 오류가 난다.
mysql 외부 접속
MySQL :: Download MySQL Workbench
Select Operating System: Select Operating System… Microsoft Windows Ubuntu Linux Red Hat Enterprise Linux / Oracle Linux Fedora macOS Source Code Select OS Version: All Windows (x86, 64-bit) Recommended Download: Other Downloads: Windows (x86, 64-bit), M
dev.mysql.com
로그인 안 하고 설치.
Connection Name에는 원하는 이름, Hostname에는 인스턴스 고정 IP, Username에는 외부접속 설정 Id, Password는 새로 설정한 후 Test Connetion 누르면... 실행 안 됨 → 포트 문제
포트 열기
- 인스턴스 → 보안 탭 → 인바운드 규칙 → 보안 그룹 링크 클릭 → 인바운드 규칙 탭 → 인바운드 규칙 편집 → 규칙 추가 → MYSQL/Aurora, Anywhere-IPv4 선택 후 규칙 저장
다시 Test Connetion 시도해 보면 아래와 같은 창 나옴. ok 누르기.
'클론코딩' 카테고리의 다른 글
[애플코딩] 인스타그램을 만들며 배워보는 Vue.js 3 완벽 가이드 (1) (0) | 2023.03.01 |
---|---|
[인프런] 맛집지도 만들기 (11) (0) | 2023.02.10 |
[인프런] 맛집지도 만들기 (9) (0) | 2023.02.09 |
[인프런] 맛집지도 만들기 - 퀴즈 11, 퀴즈 12, 퀴즈 13 (0) | 2023.02.02 |
[인프런] 맛집지도 만들기 (8) (0) | 2023.01.31 |