IT 86

젠킨스 환경변수 설정하는 방법

젠킨스 환경변수 설정하는 방법 기존에는 AWS에서 gitbash파일에서 아래처럼 환경변수를 세팅했었습니다.이번에 젠킨스와 도커를 도입하면서 아래 환경변수가 적용이 되지 않더라구요.그래서 알아보니 젠킨스에서 이미지 할때 환경변수를 집어넣는 방식으로 적용할 수 있더라구요. 아래에 그 방법을 정리해보겠습니다.​​Jenkins 관리 - Credentials 클릭​​Credentials - global 클릭​Add Credentials 클릭​아래처럼 세팅해주면 됩니다.Kind: Secret textScope: GlobalSecret: 변수 값ID: 변수 명칭Description: 아무거나 설명Create 클릭​아래처럼 생성된 것을 확인할 수 있습니다.​이후에 파이프라인에서 환경변수를 세팅해주며 됩니다.상단에 en..

IT/CI_CD 2024.09.29

AWS EC2 젠킨스, 도커로 배포 자동화하기

AWS EC2 젠킨스, 도커로 배포 자동화하기  이번에 취업한 회사는 Jenkins와 Docker를 이용하여 배포 자동화 시스템이 구축되어 있습니다. 젠킨스는 첫 회사에서 사용해 보았지만 이미 구축된 시스템에 빌드 및 배포를 하고 에러 발생 시 에러 잡아주곤 했었습니다. 개인 프로젝트에 젠킨스와 도커를 도입하면서 어떻게 동작하는 건지 좀 더 자세히 알아보겠습니다. 아래에 배포 자동화하는 방법을 정리해 보겠습니다. 이번에는 깔끔한 정리보다는 중간에 에러 나는 것도 다 집어넣었습니다.​AWS - EC2 환경에서 젠킨스 및 도커를 설치하는 방법은 아래 포스팅에 정리해놨습니다.https://jindduya.tistory.com/92 AWS EC2 ubuntu 젠킨스 설치AWS EC2 ubuntu 젠킨스 설치 개..

IT/CI_CD 2024.09.27

AWS Docker 설치

AWS Docker 설치 이번 포스팅에서는 AWS EC2에 도커를 설치해보겠습니다. 이전 포스팅에서 젠킨스를 설치했기 때문에 도커도 설치가 된다면 다음 포스팅에서는 배포자동화를 해보도록 하겠습니다. 도커 공식 사이트에 접속합니다.https://docs.docker.com/engine/install/ubuntu/ 문서에서 하라는 대로 하면 됩니다. 1. Docker 저장소 설정# Add Docker's official GPG key:sudo apt-get updatesudo apt-get install ca-certificates curlsudo install -m 0755 -d /etc/apt/keyringssudo curl -fsSL https://download.docker.com/linux/ubun..

IT/AWS 2024.09.24

AWS EC2 ubuntu 젠킨스 설치

AWS EC2 ubuntu 젠킨스 설치 개인 프로젝트에서 AWS EC2를 사용하고 있습니다. 취직해서 개인 프로젝트에 조금 뜸해졌는데 드디어 젠킨스와 도커를 도입하려고 합니다. ㅎㅎ 먼저 AWS에 젠킨스 설치부터 정리해 보겠습니다.  젠킨스 다운로드 사이트에 접속합니다.https://www.jenkins.io/ 다운로드 클릭합니다. 저는 Ubuntu 사용하고 있기에 Ubuntu를 클릭했습니다.본인 환경에 맞는 것을 사용하시면 됩니다. 아래에 적힌 명령어를 차례대로 입력합니다. sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \ https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key echo "deb..

IT/CI_CD 2024.09.23

AWS 과금 방지

AWS 과금 방지 AWS를 이용하다가 해킹을 당한다거나 본인의 실수로 인하여 요금 폭탄을 맞는 경우가 있다고 합니다. 제가 확인해 봤을 때 요금 한도를 설정하는 방법은 없는 거 같습니다. 하지만 AWS 청구 경보(Billing Alarm)을 설정해서, 설정한 요금이 초과될 경우 이메일을 통해서 경고를 받아 과금을 방지하는 기능이 있습니다. 아래에 그 방법을 정리해 보겠습니다. AWS 결제 메뉴로 갑니다. 우측 비용 모니터링에 보면 예산 상태에 설정이 필요하다고 되어있습니다. 좌측 메뉴에서 예산 및 계획 - 예산 메뉴를 클릭합니다.이후 우측에 예산 생성 버튼을 클릭합니다. 저는 현재 한 달에 0.5달러 정도의 비용을 내고 있는데요. 1달러가 넘어가면 알람이 오도록 아래처럼 설정해 보았습니다.  예산을 생성..

IT/AWS 2024.09.20

MVC 패턴과 모델1, 모델2의 차이

MVC 패턴과 모델1, 모델2의 차이 1. MVC 패턴이란?Model: 애플리케이션의 데이터와 비즈니스 로직을 관리합니다. 모델은 데이터베이스와의 상호작용, 데이터 처리, 비즈니스 규칙 적용 등을 담당합니다.View: 사용자에게 보여지는 화면을 담당합니다. 뷰는 UI를 구성하고 사용자 인터페이스를 표시합니다. 데이터는 모델로부터 전달받아 표시됩니다.Controller: 사용자 입력을 처리하고 적절한 비즈니스 로직을 실행한 후, 결과를 뷰로 전달합니다. 컨트롤러는 모델과 뷰 사이의 중개자 역할을 합니다.MVC 패턴을 사용하면 애플리케이션의 구조를 분리하여 각 구성 요소를 독립적으로 개발하고 유지보수할 수 있습니다. 2. 모델1과 모델2의 차이MVC 패턴의 두 가지 구현 방식인 모델1과 모델2는 웹 애플리케..

IT/Java 2024.09.18

JSP와 Servlet의 등장 배경 및 개념

JSP와 Servlet의 등장 배경 및 개념​웹 애플리케이션 개발의 초기 단계에서는 정적인 HTML 페이지가 주로 사용되었습니다. 하지만 사용자와의 상호작용을 통해 동적인 콘텐츠를 생성하고, 서버에서의 복잡한 로직 처리가 필요해짐에 따라 새로운 기술이 등장하게 되었습니다. 이 배경에서 JSP(JavaServer Pages)와 Servlet이 개발되었으며, 웹 개발의 혁신을 이끌었습니다.​1. 초기 웹 개발의 한계초기의 웹 페이지는 기본적으로 정적인 HTML로 구성되어 있었기 때문에, 데이터의 동적 처리가 필요할 때는 자바나 다른 서버 사이드 언어로 별도로 로직을 구현해야 했습니다. 이러한 방식은 유지보수와 확장성에 문제가 있었고, 개발자는 복잡한 서버 로직과 프론트엔드 디자인을 별도로 관리해야 했습니다...

IT/JSP 2024.09.16

스프링 프레임워크란 무엇인가?

스프링 프레임워크란 무엇인가? 스프링 프레임워크가 뭔지 알기 전에 이 글을 쓰는 이유에 대해 먼저 적어보겠습니다. ㅋㅋ 이직한지 벌써 2달이 지났습니다. 이직한 회사에서 면접 때 안 계셨던 꼰대? 상사님이 책 5권을 주고 다 읽으라고 하셨습니다. ㅋ_ㅋ 이유는 저에게 자바와 cs 질문을 했는데 50%밖에 답변을 하지 못했습니다. 코딩만 할 줄 아는 개발자가 되지 말라고 하시면서 동작원리?를 이해하는 개발자가 되라고 하셨습니다. (정확하게 뭐라고 하신지 모르겠음. 느낌으로 이해함)  저는 기본기가 없습니다. 학원을 다녀본 적도 없고 그냥 코드를 복사 붙여넣기 하면서 결과물만 완성하는 주먹구구식 개발만 해왔습니다. 이 책이 1300쪽가량 되는데 훑어보면서 쭈욱 다 읽었습니다. 그러면서 자바라는 프로그램이 어..

IT/Spring 2024.09.11

IntelliJ에서 SQL 노란색 밑줄 제거하는 방법

IntelliJ에서 SQL 노란색 밑줄 제거하는 방법​MyBatis를 사용하면서 XML파일에 SQL문을 작성하였습니다.하지만 아래 사진과 같이 SQL문에서 노란색 밑줄이 쳐지면서 상당히 거슬리는데요.아래에 원인과 해결방법을 정리해보겠습니다.​원인IntelliJ IDEA에서 XML 파일에 쿼리가 노란색 밑줄로 표시되는 것은 SQL Dialect Detection 기능 때문입니다. 이 기능은 IntelliJ가 해당 XML 파일 내의 SQL 쿼리를 감지하고, SQL 구문을 자동으로 분석하여 언어에 맞는 구문 오류나 경고를 표시하는 기능입니다.​해결방법1. 데이터베이스 연결 설정SQL 구문을 인식하기 위해 IntelliJ는 데이터베이스 연결 설정을 참조하는데, 연결 설정이 없거나 올바르지 않은 경우에 연결하면 ..

IT/Intellij 2024.09.04

도커(Docker)

도커(Docker)​가상화의 발전과정도커는 가상화에서 발전된 형태라고 합니다. 가상화 기술은 물리적 서버를 여러 가상 서버로 나누어 효율적으로 자원을 관리할 수 있도록 해줍니다. 그러나 이 가상화 기술은 시스템 자원(예: CPU, 메모리)을 상당히 소모하고, 각 가상 서버가 독립적인 운영체제를 실행하기 때문에 부팅 시간이 길고 자원 소모가 많습니다. 이러한 단점을 해결하기 위해 도커와 같은 컨테이너 기반 기술이 발전하게 되었습니다.​도커(Docker)란 무엇인가?도커는 애플리케이션을 컨테이너(Container)라는 독립적인 환경에서 실행할 수 있게 해주는 플랫폼입니다. 이를 통해 애플리케이션의 실행 환경을 일관되게 유지하고, 개발과 배포 과정에서의 호환성 문제를 줄일 수 있습니다.예시 - 웹서버배포개발자..

IT/클라우드 2024.08.30