🐯
경민민 IT 핸드북
  • Orientation
    • 전달사항
    • 복습방법
    • 수료한 선배의 한마디
    • 간단 자기소개
    • 스터디
  • 백엔드
    • Java
      • 1장 프로그래밍 기초
      • 2장 자바 메모리구조
        • 1. Stack
        • 2. Heap
      • 6장 객체
      • 8장 상속
      • 9장 다형성
      • 10장 추상클래스와 인터페이스
      • 13장 Generic
      • 14장 Thread
      • 15장 Network
      • 16장 Lamda
        • 1. 내부 클래스 (Inner Class)
          • DTO , VO, Builder Pattern
        • 2. 람다 표현식 (Lambda Expression)
        • 3. 스트림 API (Stream API)
          • Optional
      • 17장 Enum
  • 프론트
    • Node.js
    • Java Script
      • ES6+
        • Node.js로 자바스크립트 실행
        • let , const , var
        • Destructuring문법
          • Rest(...) 문법
        • Arrow Function
        • 모듈
        • ETC
    • Type Script
      • 개요
      • TS설치 및 환경설정
      • 타입스크립트 기본
        • 기본 자료형들과 타입추론
        • Object, Array , Tuple
        • Any, Unknown, Union Type
        • Function Type
          • Type Assertion && Narrowing
          • Never type
        • Type Aliases와 Interface
        • 리터럴 타입
        • 함수 추가 문법
        • Class문법
        • 객체 타입 추가 문법
        • 실습문제 1차
        • 실습문제 2차
        • 실습문제 3차
    • React
      • 개요
      • SPA 와 MPA
        • SEO(작성예정)
      • 리액트 프로젝트 생성(18.3.1.ver)
        • HTML + react 샘플
        • CRA 와 Vite 비교
      • 리액트 개념들
        • Component
          • 클래스 컴포넌트(작성예정)
          • 함수형 컴포넌트(작성예정)
        • JSX
        • React Virtual Dom
          • Reconciliation
        • hook
          • useState
        • 리액트 데이터 전달
          • FLUX
      • 백엔드 서버 연동
        • 비동기요청
        • 웹소켓
        • Promise(작성예정)
      • 실습문제 1
      • 실습문제 2
      • 실습문제3
      • 실습문제4
  • 프레임워크
    • Spring
      • Spring 개발환경 구축
        • 프로젝트 환경설정
        • 프로젝트 생성
          • MVC Project 생성이슈
        • Maven 설정
        • web.xml 설정
        • Spring Bean Configuration.xml 설정
      • Spring Legacy Project
        • Spring 요청 및 응답 흐름
        • Spring 주요 Annotation
          • 의존성 주입방식의 차이점
          • @ModelAttribute와 유효성검사
          • 비동기처리
          • 스프링 예외처리
        • Logging
        • Pagination
        • Spring File 업로드 및 다운로드
        • Spring WebSocket
        • Spring AOP
      • Spring 라이브러리들(작성예정)
        • Lombok
        • Maven
        • MyBatis
      • Spring 구성 모듈(작성예정)
      • 스프링 과제
    • Spring Boot
      • Spring Boot 개발환경 구축
      • 스프링 부트 프로젝트 생성방법들
        • 프로젝트에서 사용하는 의존성들
      • 스프링 프로젝트 구조
        • SpringBootApplication
      • application.properties
      • Cross Origin
        • CORS
      • WebSocket
        • Stomp(작성중)
      • 로그인(작성중)
      • Spring Security(작성중)
      • 실습문제 Select
      • 실습문제 Update
      • 실습문제 Delete
  • 형상관리(Git)
    • GitHub설정
    • SourceTree를 활용한 깃허브 연동
      • 소스트리 설치
      • Clone
      • Branch
        • Branch Protection rules
          • Branch Protection Rules 상세규칙
        • Rebase 와 Squash (작성예정)
      • Team Project 설정
        • 팀장 프로젝트 셋팅
          • Collaborator
          • .gitignore 설정
        • 팀원 프로젝트 셋팅
        • 공통 프로젝트 진행
  • 프로젝트
    • 진행순서
      • 요구사항 분석 단계
        • 유용한 사이트
      • 프로그램 설계 단계
        • 유용한 사이트
      • 프로그램 구현단계
        • SourceTree를 활용한 Team Project설정
      • 테스트 단계
  • 배포
    • AWS-EC2 배포 연습
    • DevOps
      • IT시스템의 변화와 DevOps
      • DevOps 라이프사이클
    • 젠킨스
      • 도커
        • 도커 설치 방법
        • 도커 기본 명령어들
      • 젠킨스 설치
      • 젠킨스 프로젝트 생성
      • 젠킨스 소스코드 통합 - Github
      • 젠킨스 빌드 설정 - Maven
      • 배포 서버 구축하기
      • 파이프라인 구축
      • AWS 서버 생성
        • AWS 인스턴스 생성
        • AWS - Zenkins 연동
        • AWS - 배포서버 연동
        • AWS - Jenkins CI/CD파이프라인 구축
  • 유용한 사이트 모음
  • SQL
    • SQLD
      • 데이터 모델링의 이해 - 스키마
      • 데이터 모델링의 이해 - ERD
      • 데이터 모델링의 이해 - 정규화
      • 데이터 모델링의 이해 - NULL
      • SQL 기본 및 활용 - WINDOW FUNCTION
    • Oracle
      • 1장 개요
      • 2장 SQL
  • LLM 서비스
    • 1장 LLM에 대한 이해
    • 2장 프롬프트 엔지니어링
      • 프롬프트와 프롬프트 엔지니어링
      • GPT PlayGround
      • 프롬프트 작문 유형
      • 기본 프롬프트 엔지니어링 태크닉
      • 고급 프롬프트 엔지니어링 태크닉
        • ReAct Prompting
        • Active-Prompt
        • Reflexion
        • Graph Prompt
      • OpenAI API설정
      • OpenAI를 활용한 프롬프트 엔지니어링 실습
        • 실습 프롬프트
    • 3장 Lang Chain 프레임워크
      • LangSmith 프레임워크
        • LangSmith를 활용한 LangChain 모니터링 설정
      • LangChain 실습 1 - Prompt
        • 실습 코드
      • LangChain 실습 2 - LLM 캐시와 메모리
    • 4장 RAG
      • Document Loader - 문서 로더
      • Text Splitter - 텍스트 분할
      • Embedding - 임베딩
      • Vector Store - 벡터 저장소
      • Retriever - 검색기
      • ReRanker - 재평가자
      • RAG
Powered by GitBook
On this page
  • Intro
  • 배포 단계
  • 1. 기획 및 코딩 단계
  • 2. 빌드단계
  • 3. 테스트
  • 4. 릴리즈
  • 5. 배포
  • 6. 모니터링 및 유지보수 단계
  • 정리

배포

배포에 대한 개념을 기술할 페이지

Previous테스트 단계NextAWS-EC2 배포 연습

Last updated 8 months ago

Intro

배포 수업에 들어가기에 앞서서 배포라는 개념에 대해 짚고 넘어가도록 하겠습니다. 여태까지 몇번은 들어봤을 배포는 무슨 의미를 가지고 있을까요?

배포란 여러분들이 열심히 작성한 코드를 윈도우와 같은 운영환경상에 옮겨서 실제로 동작하는 서비스를 제공하는 모든 과정을 의미합니다.

간단하게 말씀드렸지만 배포가 단순히 코드를 운연환경상의 서버에 옮기는게 끝이 아닙니다. 배포에는 나름대로 정해진 순서와 단계가 존재하죠. 이번시간에는 배포가 어떤 순서에 맞춰서 이루어지는지 간단하게 알아보도록 하겠습니다.

배포 단계

1. 기획 및 코딩 단계

프로그래밍할 대상을 선정하고 코딩을 하는 단계입니다.

2. 빌드단계

작성한 코드를 운영환경상에 배포하기전 압축하는 단계입니다. 실습에서는 Maven을 활용한 어플리케이션을 통해 프로젝트를 war형태로 패키징했습니다.

3. 테스트

빌드 완료된 코드를 운영환경에 배포하기 전 테스트 하는 단계입니다.

4. 릴리즈

테스트 완료된 코드를 운영환경상에 릴리즈 하는 단계입니다. 배포를 위하여 코드를 옮기는 행위라고 볼 수 있습니다.

5. 배포

릴리즈된 코드를 실제 운영환경에서 실행하여 사용자가 사용할 수 있도록 처리하는 단계입니다.

6. 모니터링 및 유지보수 단계

배포된 소프트웨어상에 문제가 없는지 모니터링 하고 , 문제점 발견시 유지보수를 하는 단계입니다.

정리

위 단계별로 작업을 완료하면 배포는 끝입니다. 굉장히 간단하죠. 다만 이번시간의 목표는 단순한 배포를 수행함이 아닙니다. 어떻게 배포를 효율적으로 수행하는가? 배포를 효율적으로 수행하기 위한 도구들이 무엇이고, 자동화시킬 수 있는 도구가 있는가에 대해서 알아볼 예정입니다.

이러한 도구들과 배포방식에 대해 알아보기 전에 잠시 IT시스템의 변화와 이에 맞춰서 변화한 프로그래밍 개발 방법론들에 대해서 알아보고 오도록 하겠습니다.

출처:
https://aws.amazon.com/ko/devops/what-is-devops/