728x90 DevOps29 Jenkins와 AWS ECR을 사용한 Docker 배포 [1] - AWS ECR Private Repository 생성 및 설정 Jenkins와 AWS ECR을 사용한 Docker 배포 [1] - AWS ECR Private Repository 생성 및 설정 Jenkins와 AWS ECR을 사용한 Docker 배포 [2] - Jenkins 서버에서 AWS ECR 로그인 하기 Jenkins와 AWS ECR을 사용한 Docker 배포 [3] - Jenkins 설정 Jenkins와 AWS ECR을 사용한 Docker 배포 [4] - 배포스크립트 작성 AWS ECR Private Repository 생성 및 설정 1. AWS ECR Private Repository 생성 먼저 Docker 이미지를 Push 하기 위한 AWS ECR Private Repository 를 생성한다 2. 수명 주기 규칙 생성 매번 새로운 Docker 이미지를 .. DevOps 2021. 7. 11. <none> 태그 이미지 일괄 삭제 docker rmi -f $(docker images -f "dangling=true" -q) DevOps 2021. 7. 9. [docker-compose] Shutdown 스크립트(docker-compose) auto_apply.sh 스크립트를 수행하여 docker-compose 로 구동시킨 어플리케이션을 종료시키는 스크립트 ## SERVICE 명(jar 파일 이름 앞자리와 동일해야함, docker-compose '서비스명-profile'과 같아야함) ## Docker 컨테이명이기도 하므로 FULL NAME으로 작성 SERVICE_NAME="service" ## Spring Profile(dev, stage, prod) export SPRING_PROFILE="dev" ## 외부에 제공되는 포트 (Docker 컨테이너 장점으로 HOST 포트만 변경하여 다른 포트로 제공할 수 있다) export HOST_PORT=9001 ## Docker Container 포트 (컨테이너 포트는 9001 Appl.. DevOps 2020. 10. 22. [Docker] Crontab 설치 https://codeday.me/ko/qa/20190325/152387.html Cron Job * * * * * root echo "Hello world" >> /var/log/cron.log 2>&1 Dockerfile FROM ubuntu:latest MAINTAINER docker@ekito.fr RUN apt-get update && apt-get -y install cron # Add crontab file in the cron directory ADD crontab /etc/cron.d/hello-cron # Give execution rights on the cron job RUN chmod 0644 /etc/cron.d/hello-cron # Create the log file to b.. DevOps 2020. 9. 3. [docker-compose] 커맨드 Docker Compose Docker for Mac / Windows는 기본으로 같이 설치됨 $ docker-compose --version Linux에 설치하는 명령어 최신버전: https://docs.docker.com/compose/install/ $ sudo curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose $ sudo chmod +x /usr/local/bin/docker-compose $ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-co.. DevOps 2020. 8. 16. [docker-compose] SpringBoot Application 배포 스크립트(docker-compose 버전) 와탭(Whatap)설정 추가 와탭 설정 1. 와탭 해당 프로젝트 생성 후 라이센스 발급 와탭 프로젝트 리스트: https://service.whatap.io/v2/account/project/list 라이센스 발급 상세 경로 WHATAP 해당 프로젝트 > 관리 > 에이전트 설치 > 2. 와탭 에이전트 다운로드 참조 2. 발급받은 라이센스 정보를 auto_apply.sh에 입력 auto_apply.sh 설정 사항중 아래의 설정 부분에 라이센스 정보 입력 ## WHATAP 해당 프로젝트 > 관리 > 에이전트 설치 > 2. 와탭 에이전트 다운로드 참조 ## WHATAP 라이센스 (WHATAP 셋팅시 라이센스 값이 없으면 PASS함) WHATAP_LICENSE="" ## WHATAP 서버 호스트 (WHATAP 셋팅시 라이센스 값이 없으면 .. DevOps 2020. 5. 3. [Docker] SpringBoot Application 배포 스크립트(docker 버전) jar 파일 Docker 적용 스크립트 CI를 통해 생성된 jar 파일에 대해서 기존 Docker 컨테이너와 이미지를 제거하고 새로운 Docker 이미지 생성 및 컨테이너를 생성하여 서버를 구동하는 스크립트 스크립트 처리를 위해 CI를 통해 생성된 jar파일을 $APPLICATION_NAME 파일명으로 복사하여 $IMAGE_NAME:$VERSION로 이미지를 생성 기존에 구동되고 있는 컨테이너와 이미지가 있다면 모두 제거하고 새롭게 생성하여 구동한다 사용방법 CI를 통해 배포된 경로 /home/centos/app 경로에 각 스크립트 파일을 실행하면 된다 자동 적용 스크립트 사용법 (auto_apply.sh) $ ./apply.sh 파일명.jar수동 적용 스크립트 사용법 (apply.sh) $ ./appl.. DevOps 2020. 5. 1. [Jenkins] CI/CD 자동적용 설정 1. SSH 접속 정보 등록 1. Jenkins 관리 - 시스템 설정 이동 2. Publish over SSH 영역으로 이동 3. SSH Server 정보 등록 추가 버튼을 눌러서 추가할 SSH Server 정보를 입력 Remote Directory 는 공용으로 사용하기 위해 HOME 영역 까지만 지정 고급 버튼을 클릭 Use password authentication, or use a different key 체크 Path to key 항목에 pem key 절대경로 입력 AWS: /var/jenkins_home/scripts/pem/aws/ TOAST: /var/jenkins_home/scripts/pem/toast/ 저장 버튼을 클릭해 입력한 SSH Server 정보 저장 2. ITEM에 자동 CI/.. DevOps 2020. 5. 1. [Docker] 신규 인스턴스 Docker 환경 구성 카카오 미러 서버로 변경 sudo sed -i 's/kr.archive.ubuntu.com/mirror.kakao.com/g' /etc/apt/sources.list1. Docker 설치 https://github.com/docker/docker-install https://docs.docker.com/ 아래의 커맨드를 입력하면 자동으로 해당 OS에 맞게 도커를 설치 해줌 Amazone Linux 는 별도의 설치 커맨드로 설치해야됨 $ curl -s https://get.docker.com/ | sudo sh도커 그룹 추가 # 그룹확인 cat /etc/group # docker 유저 추가 sudo usermod -aG docker $USER && \ sudo service docker re.. DevOps 2020. 5. 1. [Docker] Dockerfile 작성 및 사용법 요약 Dockerfile 작성 및 사용법 요약 FROM FROM 을 사용하여 base image를 지정한다 주로 ubuntu 같은 OS를 지정하게 된다 Base image를 지정할때는 ubuntu:18.04 처럼 OS와 버젼까지 정확히 지정해주는것이 좋다 FROM ubuntu:18.04 RUN package를 인스톨 한다든지 등등의 shell command를 해당 docker image에 실행시킬때 사용한다 예를 들어, 해당 docker image에 nginx를 설치하고 싶다고 한다면 아래와 같이 Dockerfile에 명시하면 된다 RUN ["apt-get", "install", "-y", "nginx"] RUN 은 bin/sh -c command 통해서 주어진 커맨드들을 실행시킨다 그러므로 만일 shell이.. DevOps 2020. 3. 17. [Docker] Dockerfile 환경 및 설정 Dockerfile 환경 및 설정 환경변수 설정(ENV 명령) Dockerfile 안에서 환경변수를 설정하고 싶을 때 사용 ENV 명령 ENV [key] [value] ENV [key]=[value] 1. key value로 지정하는 경우 단일 환경변수에 하나의 값을 설정함 첫 번째 공백 앞을 key로 설정하면 그 이후는 모두 문자열로 취급 공백이나 따옴표와 같은 문자를 포함한 것도 문자로 취급 명령별로 Docker 이미지를 만듬 ENV myName "Shiho ASA" ENV myOrder Gin Whisky Calvados ENV myNickName miya 2. key=value로 지정하는 경우 한 번에 여러 개의 값을 설정할 때는 환경변수를 key=value로 지정 Docker 이미지를 하나만 만.. DevOps 2020. 3. 17. [Docker] Dockerfile 명령어 사용 Dockerfile 명령어 사용 명령 실행(RUN 명령) 컨테이너에는 FROM 명령에서 지정한 베이스 이미지에 대해 '애플리케이션/미들웨어를 설치 및 설정한다 환경 구축을 위한 명령을 실행한다 등과 같은 명령을 실행할 때는 RUN 명령을 사용함 Dockerfile을 작성할 때 RUN 명령을 가장 많이 사용함 RUN 명령 RUN 명령으로 지정한 명령은 Docker 이미지를 생성할 때 실행 됨 RUN [실행하고 싶은 명령] RUN 명령에는 Shell, Exec 두 가지 형식의 기술 방법이 있음 1. Shell 형식의 RUN 명령 명령어의 지정을 쉘에서 실행하는 형식으로 기술하는 방법 Docker 컨테이너 안에서 /bin/sh -c를 사용하여 명령을 실행했을 때와 똑같이 작동함 Docker 컨테이너에서 실행할.. DevOps 2020. 3. 17. 이전 1 2 3 다음 💲 추천 글 728x90