🐯
경민민 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
  1. 배포
  2. 젠킨스

젠킨스 설치

Previous도커 기본 명령어들Next젠킨스 프로젝트 생성

Last updated 8 months ago

젠킨스 설치 사이트

젠킨스 설치방법

젠킨스에서는 사용하는 플랫폼(도커, 윈도우, 맥 등)에 맞춰서 젠킨스를 설치할 수 있는 방법들을 알려주고 있습니다. 따라서 현재 플랫폼의 상태에 맞춰서 원하는 버전의 젠킨스를 설치하시기만 하면 됩니다. 저희는 수업에서 Docker를 활용하여 젠키스를 컨테이너에 설치 및 배포 해보도록 하겠습니다.

도커를 이용하여 컨테이너에 젠킨스를 설치(배포)하기 위한 이미지를 다운로드 받는 명령어 입니다. 클릭해서 복사해오도록 하겠습니다.

docker pull 도커ID/레파지토리- 도커허브에서 ID/레파지토리 경로의 이미지를 다운로드 받겠다는 명령어입니다.

다운로드가 완료되었으면 컨테이너에 젠킨스 이미지를 활용하여 젠킨스를 배포해주도록 하겠습니다. 배포방법은 도커허브 하단의 링크를 통해 공식문서에서 확인할 수 있습니다.

공식문서 URL

공식문서에서 조금만 아래로 내리면 도커이미지를 통해 젠킨스를 설치할 수 있는 다양한 방법들을 제시하고 있습니다. 이중 3번째 옵션을 복사해보도록 하겠습니다.

docker run -d -v jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 --restart=on-failure jenkins/jenkins:lts-jdk17

명령어에 대한 설명

run : 컨테이너를 생성하고 실행하는 명령어입니다.

-d : 컨테이너를 현재 콘솔과 분리(detach)시켜서 백그라운드, 데몬형태로 실행하는 옵션입니다.

-v 로컬디렉토리:도커디렉토리 : 로컬디렉토리에 컨테이너의 디렉토리의 데이터를 보관하겠다는 명령어입니다. 도커는 프로세스이기때문에 프로세스 내부에 저장된 데이터는 원래라면 프로세스 종료시 함께 소면되나, 이를 유지하게끔 해주는 속성입니다.

-p 호스트port:도커port : 현재 호스트의 포트번호와 도커 컨테이너의 포트번호를 바인딩 하는 명령어입니다. 50000포트는 젠킨스의 작업을 도와주는 보조서버의 포트번호를 할당하는 구문입니다.

--restart=on-failure : 컨테이너가 실행실패할 경우 재시작 하는 설정입니다.

jenkins/jenkins:lts-jdk17 : 설치할 이미지의 경로입니다. 로컬 이미지목록에서 찾지 못하면 도커허브에서 찾아서 이미지부터 설치합니다.

젠킨스 서버가 컨테이너에 배포 완료되었다면 docker ps 명령어를 통해 실행중인 컨테이너 목록을 확인해보도록 하겠습니다.

이제 명령어를 통해 컨테이너의 고유 id, 실행한 이미지 파일의 정보, 생성시간과 ,현재상태, 접속 포트번호, 컨테이너의 이름등을 확인할 수 있습니다.

status의 상태가 UP으로 표시되고 있다면 정상적으로 실행 되고 있음을 의미하므로 컨테이버 배포가 잘 실행되었는지 확인하러 가보도록 하겠습니다.

접속시 다음과 같이 관리자 비밀번호를 입력하라는 창이 나옵니다. 해당 비밀번호는 젠킨스 서버 시작시 랜덤하게 설정되며 서버의 콘솔창에 출력해줍니다. 따라서 저희는 가동중인 컨테이너 내부로 접속하여 log파일에 접속 후 비밀번호를 복사해와야 합니다.

실행중인 컨테이너의 로그를 확인하는 방법은 다음과 같습니다.

docker logs 도커ID

다음 비밀번호를 복사하여 관리자 비밀번호에 추가하시면 접속이 가능해집니다.

비밀번호 입력 후 젠킨스에서 사용할 플러그인들을 설치하는 방법을 선택하는 창이 나오게 되는데 이때 첫번째 박스를 클릭하여 유용한 모든 플러그인들을 다운로드 받도록 하겠습니다.

설치 완료시 초기 관리자 계정을 생성할 수 있습니다.

계정 생성후 젠킨스 접속 URL을 지정하면 끝입니다. 이부분은 변경하지 않고 그대로 사용하도록 하겠습니다.

저장후 실행하시면 아래와 같이 젠킨스에 접속할 수 있습니다.

Docker에 설치하기 위해서는 우선 이 필요합니다. 도커탭을 클릭하시면 도커허브 사이트로 이동하게 됩니다.

Docker-Desktop
docker/README.md at master · jenkinsci/dockerGitHub
Jenkins download and deploymentJenkins download and deployment
Logo
Logo
localhost:8080