1. jenkins 와 git 연동

 

  -  jenkins의 포트는 설정한 8081이다 

  -  jenkins에 접속하면 처음에 암호를 입력하라고하는데 docker logs 컨테이너이름으로 로그를 보면

    중간에 암호가 나와있음 그거 입력하고 들어가면됨.

  

  -  https://ict-nroo.tistory.com/35

 

[Jenkins] 젠킨스와 Github 연동하기

젠킨스와 Github 연동하기 젠킨스와 Github을 연동하고, 추후에 Github Webhook을 이용한 자동 빌드환경 구축을 위해서 Github web에서 Personal access token을 발급 받고, 웹 브라우저 상에서 빌드를 진행하고.

ict-nroo.tistory.com

   이 블로그의 글을 그대로 따라한다. maven으로 빌드할사람은 빌드도구설정 전까지 따라한다.

 

  - 빌드도구설정에 maven 버전을 지정하기 위해선 global tool configuration 에 가서 maven installations를 클릭

  - 내 버전은 363이므로 이름에 mvn363 작성 install automatically 체크 apache버전도 동일하게 맞춰주고 저장.

  - 저장한 메이븐버전을 빌드도구설정에서 지정해줌

  - goals는 clean package

  - pom은 추가안해도되나 git에 루트가 폴더로 시작하면 앞에 폴더/pom.xml로 작성해준다.

     

  - 그리고 빌드유발에서 github hook trigger for GITscm polling 체크해준다.

  - 빌드 환경은 빌드가 실패했을경우 실행할때 사용할수있다.

  - Send files or execute commands over SSH after the build runs 는 빌드가 실패 성공되든 상관없이 명령을 수행

 

  - 이대로 잠시 냅두고 시스템 설정으로 가서 Publish Over SSH에서 ssh설정을 해줘야 한다.

  - publish over ssh 탭에서 key 항목에는 aws ec2 인스턴스 생성하면서 받은 pem파일의 정보를 넣어줘야한다.

  - begin 부터 끝까지 다 작성한다.

  - 그리고 ssh servers 항목을 다 작성해준다.

 

  - 자세한 설명이된 블로그

  - https://kamang-it.tistory.com/entry/Jenkinsssh%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EB%B9%8C%EB%93%9C%EB%90%98%EA%B3%A0-%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B04

 

 

 

  - 그 후빌드 후 조치에서 Send Build artifacts over ssh 선택

 

  - name 작성해주고 transfers 에 transfer set 에서 source files는 자기에 맞게 작성

  - 그리고 Exec command에서는 도커 명령어를 작성한다.

  -  docker stop spring-boot-book 
     docker rm spring-boot-book 
     docker-compose up -d bootapp

  - 도커 컨테이너 정지 후 삭제

  - 도커 컨테이너 재 생성 후 실행

  - 그리고 저장하면 완료

 

  - 자세한 설명

  - https://kamang-it.tistory.com/entry/Jenkinsssh%EC%9D%B4%EC%9A%A9%ED%95%B4%EC%84%9C-%EB%B9%8C%EB%93%9C%EB%90%98%EA%B3%A0-%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B04

 

[Jenkins]ssh이용해서 빌드되고 스크립트 실행하기-(4)

참고: [Jenkins]CI/CD툴 Jenkins 설치하기-(1) [Jenkins]Item 만들고 github연결해서 내려받기-(2) [Jenkins]Github에 push됬을 때 자동으로 jenkins로 빌드하기-(3) 이제 github 푸시되고 나서 자동으로 깃헙레포..

kamang-it.tistory.com

 

  - https://yookeun.github.io/tools/2018/04/14/jenkins-remote/

 

젠킨스(Jenkins)에서 원격(Remote)으로 배포하기

Jenkins에서 원격으로 배포하는 방법을 알아보자. 젠킨스에서 원격으로 배포하기 위해서는 해당 플러그인을 받아야 하다. 가장 많이 사용하는 플러그인은 아래와 같다 우리는 여기서 Publish Over SSH

yookeun.github.io

  - https://hnlee.tistory.com/2

 

[젠킨스] SSH 플러그인을 이용한 젠킨스 배포

젠킨스로 빌드하고 타겟 서버에 배포하기 위해서는 ant 스크립트를 짜고 프로젝트에 추가하는 것이 일반적이다. 하지만 젠킨스의 SSH 플러그인을 이용하면 좀 더 쉽게 작업할 수 있다는 사실! SSH

hnlee.tistory.com

 

이하의 블로그를 참조하면 됨.

참고. pipeline은 다루지 않음.

 

 

1. aws 결제

  - 프리티어는 jenkins가 테스트케이스 작성하다 뻗을수있음.

  - 프리티어 바로 위에꺼로 결제함.

  - 리눅스로 권장.

  - aws 인스턴스에 ssh 접속방법

  - https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/putty.html

 

PuTTY를 사용하여 Windows에서 Linux 인스턴스에 연결 - Amazon Elastic Compute Cloud

프라이빗 키의 암호는 추가 보호 계층입니다. 프라이빗 키가 노출되더라도 암호 없이 사용할 수 없습니다. 암호문 사용의 단점은 인스턴스에 로그온하거나 인스턴스에 파일을 복사하기 위해 사

docs.aws.amazon.com

 

 

2. docker , docker-compose 설치.

 

  2-1. docker 설치

   - https://docs.aws.amazon.com/ko_kr/AmazonECS/latest/developerguide/docker-basics.html

 

Amazon ECS의 도커 기본 사항 - Amazon Elastic Container Service

Amazon ECS의 도커 기본 사항 도커는 사용자가 Linux 컨테이너를 기반으로 하는 분산 애플리케이션을 빌드, 실행, 테스트 및 배포할 수 있도록 해주는 기술입니다. Amazon ECS는 작업 정의에 도커 이미��

docs.aws.amazon.com

 

 

2-2. docker-compose 설치

   - https://docs.docker.com/compose/install/

 

Install Docker Compose

You can run Compose on macOS, Windows, and 64-bit Linux. Prerequisites Docker Compose relies on Docker Engine for any meaningful work, so make sure you have Docker Engine installed either...

docs.docker.com

 

3. docker 로 jenkins , boot , postgresql 서버 띄우기

 

   3-1. jenkins 서버 띄우기

      - dockerfile 작성

      - https://kingds.tistory.com/32

   

 

     - docker-compose.yml 작성

     - https://kingds.tistory.com/33

 

docker-compose.yml 작성

jenkins_awscli ============================================ version: '3' services:         jenkins_awscli:                 restart: always                 i..

kingds.tistory.com

    - 작성 후 docker-compose up -d jenkins-awscli 를 입력 jenkins_awscli는 compose에서 설정한 서비스이름.

  

 

 

3-2. postgres 서버 띄우기

     -  docker에서 pull로 postgres 이미지를 받는다. 

     -  https://kingds.tistory.com/33

 

docker-compose.yml 작성

jenkins_awscli ============================================ version: '3' services:         jenkins_awscli:                 restart: always                 i..

kingds.tistory.com

    - 세팅에 맞게 작성후 docker-compose up -d 

 

 

3-3. boot app 서버 띄우기

     - boot app은 docker-compose 설정파일만 작성해서 추가해놓는다.

 

 

 

+ Recent posts