개요 이번 글에서는 Spring Boot 기반 애플리케이션을 Docker 이미지로 빌드하는 방법을 소개하고자 한다. 사전 참고할만한 글 choco, Windows 패키지 관리자 설치하기CentOS 7, Docker 및 Docker Compose 설치하기 Docker 이미지 빌드 및 실행 아래는 가장 일반적인 방법의 Docker 이미지 빌드 및 실행 방법이다. ### 애플리케이션 빌드 $ ./gradlew build # Dockerfile 생성 $ nano Dockerfile FROM amazoncorretto:11 ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} app.jar ENTRYPOINT ["java","-jar","/app.jar"] # Docker 이미지 빌드 $ ..
개요 Spring Boot 2.3.x는 이전 버전 대비 Docker 이미지 자체 빌드와 같은 굵직한 신규 기능이 여럿 추가되었다. 24시간 운영 중인 Kotlin, Spring Boot 프로젝트에 새로운 버전을 적용하기까지 유독 이전과 다르게 많은 시간을 할애하며 다양한 트러블슈팅을 해야 했는데, 잊지 않고자 관련 내용을 정리하고자 한다. 버전 업그레이드 작업 Spring Boot 2.3.x 버전 업그레이드를 위한 첫 작업이다. 프로젝트 루트의 /build.gradle 파일의 아래 내용을 수정한다. buildscript { ext { kotlinVersion = '1.4.10' springBootVersion = '2.3.5.RELEASE' querydslVersion = &..
개요 Amazon S3는 오브젝트 저장소 상품이다. 이번 글에서는 Spring Boot 기반 애플리케이션에서 Amazon S3에 파일을 업로드하고 다운로드하는 방법을 설명하고자 한다. 사전 조건 IAM 콘솔에서 새로운 정책을 생성하고, 버킷에 접근 가능한 권한 목록을 부여한다.생성한 정책을 특정 그룹에 적용한다.애플리케이션에서 사용할 사용자 계정을 생성하고 해당 그룹에 추가한다.애플리케이션에서 접근할 버킷을 생성한다. 버킷 정책에 아래 정보를 입력한다. build.gradle 가장 손이 적게 가는 방법은 프로젝트에 spring-cloud-starter-aws 아티팩트를 추가하는 것이다. 프로젝트 루트의 /build.gradle 파일에 아래 내용을 추가한다. dependencies { implementat..
개요 클라이언트로부의 요청 정보를 담은 HttpServletRequest 객체에는 요청 바디를 반환하는 getInputStream() 메써드가 존재한다. 하지만 이 메써드는 최초 1회 호출 후에는 재호출시 java.io.IOException: Stream closed. 예외를 발생시킨다. 일반적인 상황에서는 문제가 없지만 로깅 등의 목적으로 요청 바디를 획득하고자 할 경우 접근이 불가능한 문제가 발생한다. 이 경우 getInputStream()을 재호출이 가능한 별도의 커스텀 HttpServletRequest를 제작해야 한다. 요청 바디의 재접근이 가능한 HttpServletRequest 작성 요청 바디의 재접근이 가능한 커스텀 HttpServletRequest 클래스를 아래와 같이 작성한다. (소스 코..
- Total
- 2,351,793
- Today
- 98
- Yesterday
- 1,507
- bootstrap
- MySQL
- It
- Docker
- jsp
- java
- jQuery
- node.js
- 자전거
- 평속
- Eclipse
- PC앱
- Spring Boot
- 태그를 입력해 주세요.
- Kendo UI Web Grid
- 구동계
- 로드 바이크
- spring
- CSS
- Kendo UI
- date
- Spring MVC 3
- JavaScript
- jstl
- CentOS
- Tomcat
- timestamp
- chrome
- JAX-RS
- 로드바이크