logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

일간
|
주간
|
월간

실시간 검색어

검색가능 서점

도서목록 제공

클라우드 서비스 개발자를 위한 AWS로 구현하는 CI/CD 배포 입문

클라우드 서비스 개발자를 위한 AWS로 구현하는 CI/CD 배포 입문

(신입 개발자부터 실제 서비스 구축 경험이 없는 모든 개발자를 위한 실무 밀착형 입문서!)

최주호, 정재원, 정동진 (지은이)
앤써북
20,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
18,000원 -10% 0원
0원
18,000원 >
알라딘 로딩중
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
알라딘 알라딘 직접배송 1개 11,900원 >
알라딘 판매자 배송 12개 7,900원 >
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

클라우드 서비스 개발자를 위한 AWS로 구현하는 CI/CD 배포 입문
eBook 미리보기

책 정보

· 제목 : 클라우드 서비스 개발자를 위한 AWS로 구현하는 CI/CD 배포 입문 (신입 개발자부터 실제 서비스 구축 경험이 없는 모든 개발자를 위한 실무 밀착형 입문서!)
· 분류 : 국내도서 > 컴퓨터/모바일 > 컴퓨터 공학 > 네트워크/데이터 통신
· ISBN : 9791198189295
· 쪽수 : 300쪽
· 출판일 : 2023-03-15

책 소개

신입 개발자부터 실제 서비스 구축 경험이 없는 모든 개발자를 위한 클라우드 서비스 개발 실무 밀착형 입문서. 깃허브에 이미 구현된 코드와 예시와 함께 자세히 설명되어 있는 개념들로 훨씬 이해하기 쉽고 재미있게 따라할 수 있도록 구성하였다.

목차

01 AWS 이해
01 - 1 AWS 배포를 위한 프로젝트 환경설정
1. 1 JDK 설치
JDK(Java Development Kit)
1. 2 환경변수 설정
1.2.1 윈도우 shell 명령어
1.2.2 환경변수 설정
1. 3 Visual Studio Code 설치
1.3.1 Java Extension
1.3.2 Spring Extension
1.3.3 Lombok
1. 4 포스트맨 설치
1. 5 Git 설치
1. 6 프로젝트 저장 경로

01 - 2 이 책의 학습 목표(AWS)

01 - 3 전산실을 구축할 때 고려할 점

01 - 4 AWS 탄생 배경
4. 1 제프 베이조스

01- 5 AWS 회원 가입

01 - 6 EC2 서버 임대

01 - 7 EC2 서버에 접속하기(Windosw & Mac)
7. 1 Windows
7.1.1 mobaXtem 설치
7.1.2 mobaXtem 실행
7. 2 Mac
7.2.1 asw-key 파일이 저장되어 있는 경로로 이동
7.2.2 asw-key 파일에 실행 권한 부여
7.2.3 EC2 접속
7.2.4 한 줄로 EC2 접속하기

01 - 8 네트워크 기본기 - 패킷의 여행
8. 1 패킷
8.1.1 서킷 스위칭
8.1.2 패킷 스위칭
8. 2 IP 주소
8.2.1 IPv4
8.2.2 IPv6
8. 3 포트 번호

01 - 9 EC2 서버 방화벽
9. 1 방화벽
9. 2 Secure가 붙은 이유

01- 10 RSA 인증방식
10. 1 대칭키 암호화 방식
10. 2 공개키 암호화 방식(RSA)
10. 3 프로토콜
10.3.1 데이터 송신 방법
10.3.2 데이터 수신 방법
10. 4 RSA 개념이 필요한 이유


02 리눅스 명령어 학습
02 - 1 리눅스 명령어 step 1
1. 1 clear
1. 2 pwd
1. 3 cd
1. 4 ls
1. 5 절대 경로와 상대 경로

02 - 2 리눅스 명령어 step 2
2. 1 --help
2. 2 -a, --help
2. 3 mkdir
2. 4 touch
2. 5 rm
2. 6 Ctrl + C

02 - 3 리눅스 명령어 step 3
3. 1 cp(copy)
3. 2 mv(move)
3.2.1 파일 이동
3.2.2 파일명 변경
3. 3 In(link)

02 - 4 리눅스 명령어 step 4
4. 1 Windows에서 프로그램(카카오톡)을 설치할 때
4. 2 ubuntu repository
4.2.1 ubuntu repository 등록
4. 3 PPA 저장소

02 - 5 리눅스 명령어 step 5
5. 1 sudo apt update
5. 2 apt
5.2.1 파이프라인(|)
5.2.2 grep
5.2.3 포트 확인
5. 3 인바운드 규칙 설정

02 - 6 리눅스 명령어 step 6
6. 1 PPA(Personal Package Archive) : 개인 저장소
6. 2 프로그램 삭제
6. 3 PPA 찾기
6.3.1 우분투 코드 네임 확인
6. 4 PPA 추가
6. 5 apt 메뉴판 update
6. 6 tomcat8 설치
6. 7 저장소 삭제

02 - 7 리눅스 명령어 step 7
7. 1 프로세스(Process)
7. 2 스레드(Thread)
7. 3 context-switching
7. 4 sleep

02 - 8 리눅스 명령어 step 8
8. 1 프로세스와 서비스
8.1.1 service
8.1.2 syetemctl
8. 2 ps 프로세스 명령어
8.2.1 ps -ef
8.2.2 kill
8. 3 restart
8. 4 tomcat8 pid 찾는 script 작성해보기

02 - 9 리눅스 명령어 step 9
9. 1 vi
9.1.1 일반 모드
9.1.2 입력 모드
9.1.3 명령행 모드

02 - 10 리눅스 명령어 step 10
10. 1 root 접속
10. 2 root로 파일 생성
10. 3 권한
10.3.1 그룹
10.3.2 권한 변경 chmod
10.3.3 모두에게 전체 권한 부여

02 - 11 리눅스 명령어 step 11
11. 1 chown 소유자: 그룹 변경

02 - 12 리눅스 명령어 step 12
12. 1 파일 찾기
12. 2 tomcat 저장 위치 살펴보기
12. 3 index.html 파일 권한 변경
12. 4 index.html 파일 수정
12. 5 포트 변경

02 - 13 리눅스 명령어 step 13
13. 1 tail
13. 2 표준 입출력
13.2.1 표준 입력 스트림 stdin(0)
13.2.2 표준 입력 스트림 stdout(1)
13.2.3 표준 입력 스트림 stderr(2)
13. 3 표준 입출력 변경

02 - 14 EC2 서버 종료하는 법


03 AWS EC2 기본 배포하기
03 - 1 배포 V1 흐름 이해하기
기본이 되는 배포 V1

03 - 2 프로젝트 다운받고 실행해보기
2. 1 프로젝트 설명
2.1.1 프로젝트 다운로드
2.1.2 프로젝트 실행:로그 확인
2.1.3 프로젝트 실행 종료
2.1.4 테스트 파일 확인
2. 2 배포 방법

03 - 3 EC2 서버 생성 및 고정 IP 설정
3. 1 EC2 서버 생성
3. 2 고정 IP 설정
3. 3 탄력적 IP 생성
3. 4 탄력적 IP 주의사항
3. 5 탄력적 IP 연결

03- 4 프로젝트 배포하기 V1
4. 1 git 설치 확인
4. 2 프로젝트 git clone
4. 3 gradlew 실행 권한 부여
4. 4 JDK 설치
4. 5 실행 파일로 변경(gradlew)
4. 6 jar 파일 실행하기

03 - 5 프로젝트 배포하기 V1
5. 1 plain.jar 파일 생성되지 않는 코드 추가
5. 2 nohup
5. 3 로그 확인 nohup.out
5. 4 실시간 로그 모니터링 tail

03 - 6 로그 파일 위치 변경
6. 1 프로세스 종료
6. 2 로그 파일 변경 후 실행

03 - 7 표준 출력, 표준 에러
7. 1 표준 출력(1)과 에러 출력(2)
7.1.1 정상 로그와 에러 로그를 분리하는 이유

03 - 8 타임존 변경 및 종료 스크립트 작성
8. 1 timezone 세팅
8. 2 pgrep
8. 3 종료 스크립트 작성
8.3.1 스크립트 파일 생성
8.3.2 종료 스크립트 작성
8.3.3 실행 권한 부여
8.3.4 스크립트로 프로세스 종료
8. 4 서버 재시작

03 - 9 cron 주기적 실행
9. 1 cron 개념과 실습
9. 2 cron 자동화

03 - 10 스크립트로 cron 등록

03 - 11 cron으로 프로젝트 재시작
11. 1 spring-stop.sh
11. 2 spring-restart.sh
11. 3 deploy

03 - 12 재배포 프로세스 이해
12. 1 재배포 프로세스 이해

03 - 13 재배포하기
13. 1 기존 서버 중지
13. 2 aws-v1 폴더 삭제
13. 3 프로젝트 다운로드
13. 4 gradlew 실행 권한 부여하기
13. 5 빌드
13. 6 jar 실행시키기
13. 7 cron으로 자동 재시작


04 AWS EC2 배포 자동화 스크립트로 배포하기
04 - 1 AWS-V2 목표
1. 1 V1 로직
1. 2 V2 로직

04 - 2 EC2 서버 생성 및 고정 IP 설정
2. 1 EC2 인스턴스 생성
2. 2 고정 IP
2. 3 탄력적 IP 설정

04 - 3 환경 변수와 bashrc
3. 1 환경 변수
3. 2 export
3. 3 source

04 - 4 환경 변수를 특정 파일에 적용하기
4. 1 환경 변수 파일 생성
4. 2 환경 변수 등록
4. 3 원하는 파일에서만 환경 변수 사용
4. 4 환경 변수 적용 범위

04 - 5 재배포를 고려한 cron 종료
5. 1 deploy.sh 스크립트에 crontab 종료 설정
5. 2 cron delete

04 - 6 서버 종료 및 프로그램 설치
6. 1 PID 찾아서 프로세스 종료시키기
6. 2 자바 실행파일 이름 구조 파악
6.2.1 프로젝트 이름
6.2.2 프로젝트 버전
6.2.3 plain.jar 파일 생성하지 않는 설정
6. 3 환경 변수 설정
6. 4 환경 변수 적용
6. 5 실제 스크립트 작성
6. 6 스크립트 실행

04 - 7 프로젝트 다운로드 및 빌드
7. 1 sleep을 걸어주는 이유
7. 2 스크립트 실행
7. 3 jar 파일 실행

04 - 8 서버 실행하기
8. 1 스크립트 작성
8. 2 스크립트 실행
8. 3 로그 파일 저장 위치 변경

04 - 9 cron 등록
9. 1 check-and-restart.sh 생성
9. 2 스크립트 실행(배포 스크립트 완성)
9. 3 강제로 서버 종료시키기
9. 4 테스트 없이 jar 빌드 하는 방법

04 - 10 배포 파일 압축하기
10. 1 tar
10.1.1 tar 압축 연습
10. 2 실제 배포 파일 tar 압축
10. 3 파일 전송

04 - 11 배포 파일로 실제 배포하기


05 엘라스틱빈스톡으로 배포하기
05 - 1 엘라스틱빈스톡 샘플 코드 실행
1. 1 엘라스틱빈스톡

05 - 2 엘라스틱빈스톡 내부 구성
2. 1 엘라스틱빈스톡 생성
2. 2 로드밸런서
2. 3 NGinX 서버는 외부 IP 요청을 거부한다

05 - 3 엘라스틱빈스톡 프로젝트 대표
3. 1 jar 파일 만들기
3.1.1 프로젝트 다운로드
3.1.2 프로젝트 빌드
3. 2 프로젝트 업로드 및 배포
3.2.1 프로젝트 업로드
3.2.2 “심각” 상태가 뜨는 이유

05 - 4 엘라스틱빈스톡 오류 없이 배포하기
4. 1 jar 파일 만들기
4.1.1 프로세스 설정

05 - 5 엘라스틱빈스톡 SSH 접속
5. 1 실행 중인 프로세스 확인
5. 2 포트 확인
5. 3 NGinX

05 - 6 엘라스틱빈스톡 종료하기


06 엘라스틱빈스톡 & 데이터베이스
06 - 1 엘라스틱빈스톡 생성
1. 1 엘라스틱빈스톡 Create Application
1. 2 추가 옵션 구성
1.2.1 사전설정 : 단일 인스턴스(프리 티어 사용 가능)
1.2.2 소프트웨어 편집
1.2.3 로드밸런서
1.2.4 보안
1.2.5 데이터베이스

06 - 2 VPC 구성
2. 1 EC2
2.1.1 보안 그룹
2. 2 VPC(Virtual Private Cloud) 가상 사설 클라우드
2. 3 CIDR 표기법
2.3.1 IP 주소
2.3.2 네트워크 클래스
2.3.3 서브넷 마스크
2.3.4 CIDR
2.3.5 서브넷

06 - 3 RDS 생성 및 접속(Windosw, Mac)
3. 1 RDS 생성
3. 2 인바운드 규칙 편집
3. 3 정리
3. 4 RDS 접속
3.4.1 Windows 접속
3.4.2 Mac 접속

06 - 4 RDS 세팅하기
4. 1 데이터베이스 생성

06 - 5 배포 V4 프로젝트 살펴보기
5. 1 프로젝트 다운로드
5. 2 프로젝트 실행해보기
5. 3 프로젝트 내부 구조
5.3.1 yml 설정 파일
5. 4 환경 속성 변경

06 - 6 배포 및 테스트
6. 1 빌드
6. 2 엘라스틱빈스톡
6. 3 배포 완료
6. 4 테스트


07 엘라스틱빈스톡 & 데이터베이스 & CI/CD 배포하기
07 – 1 배포 V5 시작 전 준비사항
1. 1 엘라스틱빈스톡 환경 종료

07 – 2 AWS 요근 정책
2. 1 AWS-V5에서 사용할 서비스
2.1.1 엘라스틱빈스톡
2.1.2 로드밸런스

07 – 3 AWS-V5 전체 구성 이해하기
3. 1 이전 배포 방식
3. 2 V5 배포 구성(CI/CD)

07 – 4 CI/CD란?
4. 1 폴링(polling) 기법
4. 2 웹훅(Webhook) rlqjq

07 – 5 AWS 사용자 / 정책 / 그룹 / 역할 이해하기
5. 1 IAM(Identity Access Manager)
5.1.1 사용자
5.1.2 그룹
5.1.3 정책
5.1.4 역할

07 – 6 Github 프로젝트 fork 하기

07 – 7 RDS 생성하기
7. 1 보안 그룹 설정
7.1.1 보안 그룹 생성
7.1.2 보안 설정
7. 2 RDS 생성
7.2.1 데이터베이스 생성
7.2.2 데이터베이스 접속

07 – 8 엘라스틱빈스톡 생성
8. 1 create application
8.1.1 추가 옵션 구성

07 – 9 롤링 : 배포 전략
9. 1 한 번에 모두
9. 2 추가 배치
9. 3 변경 불가능(블루/그린 배포)

07 – 10 배포 V5 현재 구성 살펴보기
10. 1 Application Load Balancer
10. 2 Auto Scaliling Group
10.2.1 EC2
10. 3 RDS
10. 4 ALB(Application Load BAlancer)
10. 5 NLB(Network Load Balancer)

07 - 11 시큐리티 보안 그룹 설정 이해
11. 1 EC2로 다이렉트 접근이 불가능한 이유
11. 2 RDS 보안 그룹 수정

07 - 12 Github Action(CI/CD 도구)
12. 1 프로젝트 다운로드
12. 2 .github/workflows/deploy.yml
12.2.1 name
12.2.2 jobs
12. 3 Push
12.3.1 Github Action

07 - 13 엘라드틱빈스톡 배포 첫 번째 도전(실패)
13. 1 deploy.yml
13.1.1 steps
13. 2 jar 배포와 zip 배포의 차이점
13.2.1 jar 배포
13.2.2 zip 배포
13. 3 00-makeFiles.config
13. 4 Procfile
13. 5 엘라스틱빈스톡 배포 도전

07 - 14 엘라드틱빈스톡 배포 첫 번째 도전(성공)
14. 1 IAM
14.1.1 IAM 생성
14.1.2 IAM 등록
14. 2 엘라스틱빈스톡에 배포 두 번째 도전

07 - 15 한글 입력 오류 해결
15. 1 RDS 파라이터 그룹 수정
15. 2 오류 로그 확인
15.2.1 Procfile
15.2.2 sbin
15.2.3 로그 저장 위치

07 - 16 네트워크 로드밸런서 고정 IP 설정
16. 1 ALB와 NLB의 차이
16. 2 EC2 탄력적 IP 생성
16. 3 EC2 로드밸런서 생성
16.3.1 Network Load Balancer

저자소개

정동진 (지은이)    정보 더보기
현) 동의대 정보아카데미 강사 현) 부산IT교육센터 프로그래밍 강사 현) JSPStudy.co.kr 대표 운영자 (저서) 코딩 1도 몰라도 커서 AI와 대화하며 7가지 프로그램 만들기 (앤써북) JSP Study의 JSP 웹 프로그래밍 입문 + 활용 (4판) (앤써북) IoT 사물인터넷을 위한 라즈베리파이 5 정석 (앤써북) 모두가 할 수 있는 플러터 UI 입문 (앤써북) 그누위즈의 PHP & MySQL 웹 프로그래밍 입문 + 활용 (전면 개정판) (앤써북) 그누위즈의 HTML5 & CSS3 웹 디자인 입문 + 활용 (앤써북)
펼치기
최주호 (지은이)    정보 더보기
현) 겟인데어 대표 현) 유튜브 메타코딩 채널 운영 현) 지아이티아카데미 프리랜서 강사 전) 경남정보대학교 - 클라우드 학과 겸임교수 전) 패스트캠퍼스, 스파르타코딩, 인프런, 카카오캠퍼스 다수 강의 참여 전) 노마드랩 개발팀장 전) 군장병 공개 소프트웨어 역량 강화 - 국방부 장관상 수상 (저서) AWS로 배우는 실전형 CI/CD 2판 (앤써북) 만들면서 배우는 플러터 앱 프로그래밍 (앤써북) 모두가 할 수 있는 플러터 UI 실전 (앤써북) 모두가 할 수 있는 플러터 UI 입문 (앤써북) IoT 사물인터넷을 위한 라즈베리파이 5 정석 (앤써북) JSPStudy의 JSP & Servlet 웹 프로그래밍 입문 + 활용 (앤써북) 그누위즈의 PHP&MySQL 웹 프로그래밍 입문 + 활용 (전면 개정판) (앤써북)
펼치기
정재원 (지은이)    정보 더보기
현) JSPStudy 운영진 현) 메타코딩 컨텐츠 연구 운영진 (저서) AWS로 구현하는 CI/CD 배포 입문 (앤써북)
펼치기

책속에서



추천도서

이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책