본문 바로가기

devops

Ec2 docker 서버에 배포하기(maven,war) 1.SSH 키 등록 및 접속1-1 키생성ssh-keygen -t rsa위 명령어를 통해 SSH 키를 생성해줍니다.1-2 키 확인#디렉토리 확인(linux:ls와 같은역할)dir#공개키 확인(linux:cat과 같은역할)type id_rsa.pub키가 생성된 디렉토리에 들어가 id_rsa.pub파일에서 공개키를 복사합니다.1-3 키등록(Ec2 server)# ssh 디렉토리 접속cd ..ssh# 키 등록파일 변경sudo vi authorized_keys Ec2 서버에 접속해 ssh 디렉토리로 들어가 authorized_keys 파일에 1-2에서 복사한 공개키를 등록해줍니다..(새로운 줄 입력시 명령어 모드에서 O) 1-4 접속확인#ssh 접속ssh ec2-user@[EC2 public-ip]window에서.. 더보기
Linux Ec2에 tomcat 설치 1. amazon-linux-extras 설치 sudo amazon-linux-extras install epel -y 추가적인 dependency를 한꺼번에 다운로드 받기위해 amazon-linux-extras 확장패키지를 설치해줍니다. 2.tomcat 설치 및 실행 # opt 디렉토리로 이동 cd /opt #tomcat tar.gz 다운 sudo wget https://mirror.navercorp.com/apache/tomcat/tomcat-9/v9.0.87/bin/apache-tomcat-9.0.87.tar.gz # tomcat 압축 해제 sudo tar -xvzf apache-tomcat-9.0.87.tar.gz # 압축해제 된 tomcat 파일로 이동 cd apache-tomcat-9.0.87.. 더보기
Linux Ec2에 docker 설치 1.amazon-linux-extras 설치 sudo amazon-linux-extras install epel -y 추가적인 dependency를 한꺼번에 다운로드 받기위해 amazon-linux-extras 확장패키지를 설치해줍니다. 2.docker 설치 sudo yum install -y docker 위 명령어를 통해 docker를 설치해줍니다. 3.docker 실행 # 재부팅시에도 docker가 실행될 수 있도록 sudo systemctl enable docker # docker 싱행 sudo systemctl start docker # docker group에 ec2-user 포함(재접속 시 포함됨) sudo usermod -aG docker ec2-user #docker 버전 확인 docker.. 더보기
Linux Ec2에 Jenkins 설치 1. java11 설치 # aws coreetto 다운로드 sudo curl -L https://corretto.aws/downloads/latest/amazon-corretto-11-x64-linux-jdk.rpm -o jdk11.rpm # jdk11 설치 sudo yum localinstall jdk11.rpm # java 버전 선택 sudo /usr/sbin/alternatives --config java # java 버전 확인 java --version # 다운받은 설치키트 제거 rm -rf jdk11.rpm 2. amazon-linux-extras 설치 sudo amazon-linux-extras install epel -y 추가적인 dependency를 한꺼번에 다운로드 받기위해 amazon-.. 더보기
Jenkins Pipeline으로 Docker 서버에 배포하기(Maven,war) 1.Pipeline 생성 jenkins에서 새로운 아이템을 Pipeline으로 생성해줍니다. 2.Maven 버전 설정 jenkins 관리 ->Tools ->Maven installations에 Maven이 설정되있는지 확인합니다. 3. Pipeline Script 생성 pipeline { agent any tools { maven 'maven3.9.2' } stages { stage('github clone') { steps { // Get some code from a GitHub repository git branch: 'main', credentialsId: 'jenkins_maven', url: 'https://github.com/yougeun6021/Jenkins_maven_war' } } st.. 더보기
docker ssh server 설치 및 설정 1.docker ssh image 다운로드 docker pull edowon0623/docker 리눅스 기반 서버에 docker와 ssh서버가 설치되어있는 이미지를 다운받아줍니다. 2. docker 실행 docker run --privileged --name docker-server -itd -p 10022:22 -p 8081:8080 -e container=docker -v /sys/fs/cgroup:/sys/fs/cgroup edowon0623/docker:latest /usr/sbin/init 위에서 다운 받은 이미지를 docker로 실행시켜줍니다. 3.ssh 실행 ssh root@localhost -p 10022 위의 명령어로 ssh서버에 접속하여줍니다.(password:P@assword) 4. .. 더보기
Jenkins 빌드 파일 다른 서버에 배포(maven,war) ssh server 설치및 설정https://blog.yougeun.com/147 docker ssh server 설치 및 설정1.docker ssh image 다운로드 docker pull edowon0623/docker 리눅스 기반 서버에 docker와 ssh서버가 설치되어있는 이미지를 다운받아줍니다. 2. docker 실행 docker run --privileged --name docker-server -itd -p 10022:22 -p 8081:80blog.yougeun.com 1.SSH 플러그인 설치 Publish over SSH plugin을 Jenkins에 설치해줍니다.2. jenkins 관리 -> System Configration -> System -> Publish over SSH 추가.. 더보기
Jenkins Poll SCM설정 Build Periodically 와 Poll SCM 차이점 1. Build Periodically 파일에 변경이 없어도 빌드된다 2.Poll SCM 파일에 변경이 있을 때만 빌드된다. 1.Poll SCM 추가 빌드 유발(Build triggers)에 Poll SCM에 Cron식인 H/10 * * * *(매 10분마다) 을 추가한다. 기존의 Cron식은 */10 * * * * 이지만 위의 식 H/10 * * * *을 쓸 경우 매 십분 (ex 00,10,20,30,40,50)으로 실행되는 것이 아니라 랜덤한 십분(ex 02,12,22,32,42,52)으로 실행되어 서버에 과부하를 낮출 수 있다. 2.Poll SCM 확인 github에 Commit이 일어나면 Jenkins가 1번에서 정한 Cron식의 시간마.. 더보기