전체 글 37

도커(Docker) - Dockerfile, build, run

터미널에서 docker build 명령어를 이용하여 빌드 하기 위해서는 docker file를 작성해주어야만 한다.만, 그전에 docker build를 사용하기 위해서는 스프링부트 파일을 우선적으로 build 해주어야 하기에 아래와 같은 명령어를 사용하여 build해주자.#Gradle 사용 기준./gradlew build해당 위치에 이러한 파일이 생성이 되었으면 성공한 것이다. docker file에는 docker를 build하기 위한 정보와, 이후의 실행할 코드들 혹은 환경 변수 등 docker와 관련된 여러가지 사항을 작성할 수 있는 파일이다.Dockerfile은 보통 프로젝트의 최상단 위치에 생성해주면 되며 , 이름은 대소문자를 구분하기에 정확하게 작성해주어야 한다.생성된 Dockerfile 내부에..

Dokcer 2024.07.27

Jekins 특정 브랜치에서만 동작 - Git Parameter 플러그인

Jenkins를 특정 브랜치에서만 동작하게 하기 위해서는 GitHub Webhooks으로 전달 받은 데이터를 분석하여 사용하는 방법 등이 존재하지만, 이러한 과정을 생략하고 정말 간단하게 사용할 수 있는 Git Parameter 플러그인이 존재하기에 사용하는 방법을 작성하고자 한다. 우선 플러그인 설치 방법이다위와 같은 과정을 거쳐 플러그인 설치에 성공하였다면, 기존에 생성했던 혹은 생성할 파이트라인의 구성에 들어와 Git Parameter을 선택해준다. 이와 같이 Name에는 임의의 값, Parameter Type은 Branch ( 필요에 따라 변경하면 되지만, 이번에는 특정 Branch에서만 동작하기 위해 설정 )Default Value에는 적용하고 싶은 브랜치 명을 입력하면 된다.  위와 같이 설정..

Jenkins 2024.07.25

Jenkins CI/CD 구축 방법

CI/CD 지속적 통합/배포 , 간단하게 말해서 자동으로 코드를 통합해주고 배포해주는 것을 CI/CD라고 한다.CI/CD는 특정 주기마다 실행하는 방법도 있고, 특정 시간에 실행하는 방법도 있지만 보통은 github와 연동하여 특정 브랜치에 push 이벤트가 발생하면 실행하는 방법을 많이 사용한다.이를 위해 Jenkins에서 github에서 발생하는 push 등의 이벤트를 확인할 수 있어야 하는데, 이를 위해 github에서는 특정 이벤트가 발생하면 사용자가 지정한 URL로 이를 보내주는 Webhook 을 지원하기 때문에 이를 사용해 보기로 하겠다.우선 깃허브의 Settings 에 들어온 후 왼쪽 메뉴에서 Webhooks를 클릭하여 들어갑니다. 후에 우측 상단의 Add webhook을 클릭합니다.( 테스..

Jenkins 2024.07.23

젠킨스 ( Jenkins ) 설치 방법

젠킨스 공식 문서https://www.jenkins.io/doc/book/installing/linux/공식 문서 외 블로그 등에서 가져온 설치 방법은 키 번호가 업데이트 되어 있지 않아 설치 과정 중 e package 'jenkins' has no installation candidate ubuntu 오류 발생.2024/07/19 기준 공식 문서 설치 방법이며, 후에 오류가 발생했을 경우 공식 문서 참고LTS ( 장기지원 ) 버전sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \\ echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \\ binary/ | sudo tee \\ /etc/ap..

Jenkins 2024.07.21

무료 서버 선택 (AWS,GCS,NaverCloud,OracleCloud,CloudType , , )

내가 작성하거나 만든 코드를 , 웹페이지를 , DB를 ,, 등등 여러가지를 다른 사람과 공유하고 보여주기 위해서는 필수적으로 서버를 사용해야한다.물론 같은 IP를 사용하는 ( 같은 와이파이를 사용하는 회사나 학교 ) 사람들에게만 공유하고 사용하거나, 내가 사용하는 컴퓨터를 서버로 사용하거나, 안 쓰는 노트북이나 컴퓨터를 서버로 사용하는 방법 또한 있겠지만, 여러가지 제한 사항이나 문제점 등이 많기에 특별한 상황이 아니라면 추천하고 싶지 않다.그래서 결국, 무료로 서버를 사용하려면 어떤 것을 선택하면 되는가?무료로 사용할 수 있는 서버는 종류가 정말 많은데 ( AWS,GCS,NaverCloud,OracleCloud,, 등등 ) 결론부터 말하자면, AWS를 사용하는 것을 가장 추천한다.각 서버들의 특징위에 ..

등등 2024.07.19

API 문서화 - swagger ( springboot )

개발을 진행함에 있어 작성한 코드를 기록하고 누구나 이해하기 쉽게 남기는 것은 너무나 중요한 사항이다.이러한 것들을 직접 손으로 기록하여 메신저를 통해 다른 사람에게 전달하는 방식도 물론 있으나 이러한 과정 없이 자동으로 내가 만들어낸 API를 문서화 시켜주는 도구들이 여럿 존재한다. ( swagger, postman, spring rest docs 등등 .. )그중 이번에는 스웨거 ( sawgger ) 에 대해 소개하고 사용하는 방법을 작성하려 한다.스프링부트에서 스웨거를 사용함에 있어 선택할 수 있는 사항이 크게 2가지가 있는데 Springfox와 Springdoc이다.사실 사용함에 있어 큰 차이점이 있는 것은 아니지만 Springfox는 2020년을 기준으로 업데이트를 중단했기 때문에 특별한 이유가..

Springboot 2024.07.18

스웨거 의존성 - swagger , Springfox, Springdoc …

처음 스웨거를 접하는 사람들은 공식 문서보다는 이해하기 쉬운 블로그 글들을 많이 접할 것이라 생각을 한다. 하지만 이러한 글들을 유심히 살펴보면 글마다 의존성들이 조금씩 다르다는 것을 알 수가 있다. 결론부터 말하자면 2024년 이후로 스프링부트를 사용하는 분이라면 Springdoc 를 사용하는 것을 추천한다. Springfox는 2020년 이후로 업데이트가 되지 않기에 최신 버전 스프링부트와 연결시 오류가 발생하며, 간혹 io.swagger.core.v3 와 같은 의존성 등을 추가하여 진행하는 경우도 있는데, 해당 의존성은 우리가 알고 있는 스웨거의 일부만을 가져오는 것이기 때문에 원하는 형태로 사용할 수 없을 가능성이 크다.

등등 2024.07.15