본문 바로가기
728x90

전체 글389

CI/CD 도입..(with Jenkins) 왜 했나?기존 방식이 너무 귀찮아서..직접 gradle 빌드FileZila 를 사용해 EC2로 jar 파일을 옮기기서버로 가서 직접 컨테이너 내리고/기존이미지 삭제 후 이미지 만들고 컨테이너 올림→ 너무 귀찮았다..Kubernetes 적용은 나중에..사실 처음엔 kubernetes 도 함께 적용할 예정이었으나쿠버가 필요한 정도의 큰 서비스도 아니고사실 쿠버 사용 리소스 지원이 안되어(EBS 및 인스턴스 크기..)당장은 딱 CI/CD 만 적용하기로 함.사용 기술GithubJenkinsAnsibleDockerCI/CD 구성코드가 test branch 에 푸쉬되면 github 에서 Jenkins 에게 웹훅으로 트리거를 보낸다.젠킨스는 코드를 땡겨와 gradle 로 빌드한다. (clean build)test 성.. 2024. 5. 29.
일을 하니깐 안 불안해요. 보통 저녁 12시를 기점으로 잠들어 하루 8시간씩 수면을 하고 있음에도 아침 잠이 많은 탓에 아침마다 비몽사몽한다.요즘 운동을 시작해서 더 피곤한지도 모르겠다. 근육통이......ㅡ_ㅡ아침 출근은 아주 힘들고 회사 생활이 마냥 유쾌한 건 아님에도지금 삶에 어느정도 만족감을 느끼고 있다.  어딘가에 소속되어있고 매일 출근할 내 자리가 있으며 내가 할 수 있는 일이 있고그게 꽤 할만하며 어떨 때는 보람차기도 하고 그 일로 돈을 벌 수 있고많은 돈은 아니지만(사실 적지만) 그래도 친구들과 약속을 잡는 것이 더 이상 부담스럽지 않고필요한 것이 있으면 구매할 능력이 있고 과소비를 고민하고 적금과 주식 중에 뭐가 더 돈을 모으는데 괜찮을까 고민하고돈을 더 벌고 싶고 더 좋은 환경에서 일하고 싶어서 공부하고 덕분에 .. 2024. 5. 21.
linux ) ssh-copy-id root 계정에 Permission Denided 문제 발생ansible-playbook 생성을 위해 ansible 용 서버에서 ssh-copy-id root@172.1.1.1 명령을 실행했는데 올바른 비밀번호를 사용했는데도 불구하고 Permission Denied 발생해결 방법패스워드 변경 - 실패sudo passwd root새로운 비밀번호로도 여전히 권한 없음 발생.다른 유저로 로그인 - (반)실패root 유저 말고 ansadmin 유저 key 를 ssh-copy-id ansadmin@172.~ 하는 작업은 정상적으로 완료.그래서 그냥 ansadmin 계정을 사용하려고 했으나…문제점사실 ansible 서버에서 쿠버작업을 하기 위해 세팅 중이었는데..root 계정에만 kubernetes 가 깔려있어서 ansadmin 계정으로 요청이 안 됨..ㅋㅋ;어쨌.. 2024. 5. 17.
CI/CD ) Ansible 로 배포 자동화하기 ! Ansible 을 사용해서 컨테이너 만들기젠킨스가 github 에서 코드를 갖고 온다.아티팩트를 만들어서 Ansable Server 에 복사한다.Ansible 이 docker 로 이미지를 만들어 docker hub 에 푸쉬한다.배포할 때는 docker 가 dockerhub 에서 이미지를 당겨와서 사용한다.docker host 를 ansible 로 관리한다.Ansible 서버 준비하기EC2 인스턴스 생성 후 hostname 변경sudo su -vi /etc/hostname---# 호스트 이름 변경 후---# 시스템 재시작init 6ansible 용 유저 추가sudo su -# user 추가useradd ansadminpasswd ansadmin---# 패스워드 추가 작업---# visudo 에서 권한 변경.. 2024. 5. 14.
CI/CD ) Docker 와 함께 자동 배포하기 목표 : Docker 컨테이너에서 코드 배포하기이전까지와 하는 일은 동일하나, 이제는 Jenkins 가 Tomcat 대신 docker 컨테이너로 배포한다.도커용 EC2 인스턴스 생성 후 docker 설치# 도커 설치yum install docker# 도커 상태 확인service docker status# 도커 시작service docker startTomcat 컨테이너 생성 - with pull Imagedocker pull tomcatdocker images# 컨테이너 내부 포트 8080# 외부 (로컬) 에서는 8081 포트로 연결docker run -d --name tomcat-container -p 8081:8080 tomcat# 지금 접속하면 에러가 뜬다.# 컨테이너 속으로 접속docker exe.. 2024. 5. 13.
CD ) Tomcat 과 함께 자동 배포까지 Step6. Tomcat 서버 설정EC2 에 톰캣 서버 세팅새 인스턴스를 만들고 Java 및 Tomcat 설치yum install java-17# Tomcat install 페이지에서 tar.gz 파일 링크 복사한 것wget # 압축 풀기tar -xvzf apache-tomcat-9.0.89.tar.gz# 풀고 남은 파일 tomcat 디렉토리로 경로 변경해주기mv apache-tomcat-9.0.89 tomcat# 해당 디렉토리 안에 있는 startup.sh 이 톰캣 실행 스크립트다.cd tomcat/binpublicIP:8080 으로 접속해보면..우와 톰캣 서버다!하지만 여기에서 Manager App (관리자 페이지) 에 접속하려고 하면 안 됨.기본적으로 Manager App 은 톰캣이 실행되는 로컬 .. 2024. 5. 10.
728x90