본문 바로가기

반응형

docker

[AWS] CodeBuild를 이용한 Docker 이미지 빌드 및 ECR에 저장 AWS CodeBuild 및 CI/CD 에 대한 설명은 아래 글로 대신합니다. [AWS] CI/CD 파이프라인과 AWS CI/CD 서비스 CI/CD 도입 계기는 항상 필요로 생각하고 있는 부분이었지만 귀찮다는 생각에 시도를 하지 않았지만 시간이 지날 수록 프로젝트가 커지면서 배포 과정에 점점 더 많은 시간들이 낭비되고 있는게 kanoos-stu.tistory.com CI/CD 파이프라인 구축을 위해 AWS CodeBuild 설정 CodeBuild가 CI/CD 파이프라인에서 담당할 과정은 다음과 같다 GitHub에 있는 Spring 프로젝트를 Pull Sring 프로젝트를 빌드 JAR 파일을 Docker Image로 빌드 Docker Image를 ECR에 푸시 AWS CodeBuild 빌드 프로젝트 생성 .. 더보기
[AWS] CI/CD 파이프라인과 AWS CI/CD 서비스 CI/CD 도입 계기는 항상 필요로 생각하고 있는 부분이었지만 귀찮다는 생각에 시도를 하지 않았지만 시간이 지날 수록 프로젝트가 커지면서 배포 과정에 점점 더 많은 시간들이 낭비되고 있는게 느껴져(약 3~5분) 배포 자동화의 필요성을 뼈저리게 느꼈다. 원래는 jenkins 로 CICD 를 간단하게 구축하려 했지만 기존에 해봤던 작업이라 지루함이 작업시작도 전부터 눈에 훤했다. 그래서 다른 파이프라인 구축 방법을 찾아봤고 AWS 서비스를 통해서도 유사하게 그리고 기존 시스템들과 더 잘 통합될 수 있는 이점이 있다는걸 알게되었다. 자동화할 과정과 환경은 다음과 같다 스프링 프로젝트 빌드 - 스프링 프로젝트를 빌드하여 실행 가능한 JAR 파일 생성 도커 이미지 빌드 - 생성된 JAR 파일을 기반으로 도커 이미.. 더보기
[Jenkins] Docker Jenkins로 Spring Boot 빌드 및 배포 - 2 (파이프라인 작성 및 빌드 테스트) 시스템 환경 jenkins 인스턴스 (ec2 ubuntu 20.04) server 인스턴스 (ec2 ubuntu 20.04) 개발 데스크탑 (mac 12.0.1) 구현할 파이프라인 구조 개발 데스크탑에서 코드 작성 후 github push github에서 webhook -> jenkins instance jenkins 파이프라인실행 git clone gradle build docker build docker image push jenkins 인스턴스에서 server 인스턴스로 ssh 접속 server 인스턴스 docker image pull server 인스턴스 docker image run server 인스턴스 기존에 같은 서비스 존재 시 기존 서비스 종료 jenkins에서 메일 또는 슬랙으로 결과 전.. 더보기
[Jenkins] Docker Jenkins로 Spring Boot 빌드 및 배포 - 1 (Jenkins 권한 및 플러그인 설정) 시스템 환경 jenkins 인스턴스 (ec2 ubuntu 20.04) server 인스턴스 (ec2 ubuntu 20.04) 개발 데스크탑 (mac 12.0.1) 구현할 파이프라인 구조 개발 데스크탑에서 코드 작성 후 github push github에서 webhook -> jenkins instance jenkins 파이프라인실행 git clone gradle build docker build docker image push jenkins 인스턴스에서 server 인스턴스로 ssh 접속 server 인스턴스 docker image pull server 인스턴스 docker image run server 인스턴스 기존에 같은 서비스 존재 시 기존 서비스 종료 jenkins에서 메일 또는 슬랙으로 결과 전.. 더보기
[Docker] 도커 컨테이너에서 도커 이미지 빌드 (with jenkins) 발단 docker 환경에서 jenkins를 이용하여 pipeline구축 시 docker 이미지를 빌드해야하는 경우가 생긴다. 이때 jenkins를 docker로 실행시키지 않는다면 권한 부여만으로 해결이 가능하지만 jenkins를 docker이미지로 구동하면 jenkins컨테이너에서 host의 docker를 사용하여 빌드를 해야한다. 이때 해결방법으로 jenkins컨테이너에 내에 다른 docker 데몬을 실행하는 것 인데 이 방법은 docker에서 권장하지 않는다. 해결 방법 해결방법은 host의 docker소켓을 컨테이너와 공유하는것이다. 이렇게 하면 컨테이너가 host의 docker 데몬을 사용하여 이미지 빌드, 컨테이너 실행을 할 수 있다. 빌드된 이미지 사용 docker run \ -p 8080:.. 더보기
[Jenkins] Docker Jenkins 이미지 설치 및 기본 설정 환경 ubuntu 20.04 docker 20.10.11 jenkins image lts 같이 읽어보면 도움될 글 Jenkins란? Jenkins를 사용하는 이유 및 Declarative pipeline 문법 [Jenkins] Jenkins란? Jenkins를 사용하는 이유 및 Declarative pipeline 문법 Jenkins Jenkins는 소프트웨어 구축, 테스트, 전달 및 배포와 관련된 모든 종류의 작업을 자동화하는데 사용할 수 있는 오픈 소스 자동화 서버이다. Jenkins는 시스템 패키지, Docker 또는 JRE(Java Runtime Env kanoos-stu.tistory.com Docker Jenkins 이미지 설치 도커 허브 젠킨스 오피셜 이미지 는 더이상 사용되지 않고 lts버.. 더보기
[Docker] Docker Nginx, Reverse Proxy로 서버 구동 및 보안 설정(with kibana) - 2 이전 글 - [Docker] Docker Nginx, Reverse Proxy로 서버 구동 및 보안 설정(with kibana) - 1 Nginx 구동 확인 http://localhost 로 접속하면 다음과 같이 index 파일이 출력된다. index 파일이 출력되는 이유는 기본으로 생성되어있는 conf.d/default.conf 파일에 80포트를 리슨하고 있는 가상 서버가 root와 index direction 을 통해 index파일을 전달하도록 설정되어있기 때문이다. Nginx Kibana 서버 설정 # conf.d/kibana.conf server { listen 5600; listen [::]:5600; server_name kibana; location / { proxy_pass http://k.. 더보기
[Docker] Docker Nginx, Reverse Proxy로 서버 구동 및 보안 설정(with kibana) - 1 시작 전 읽어보면 도움 될 글 - https://kanoos-stu.tistory.com/entry/Nginx [Nginx] Nginx란, Nginx 와 Apache Nginx 란 트래픽이 많은 웹사이트의 확장성을 위해 개발된 경량의 고성능 웹서버이다. Nginx는 적은 자원의 사용으로 높은 성능과 높은 동시성을 목표로 만들어졌다. Nginx가 등장하기 전에는 Apache kanoos-stu.tistory.com Nginx Image 설치 (생략 가능) docker pull nginx 최신버전 nginx를 받아준다. (태그 입력 생략 시 latest 버전 자동 설치) Nginx container 실행 sudo docker run -d --name nginx -p 80:80 \ -v my-nginx-con.. 더보기

반응형