| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
- 중간 장소 찾기
- JPQL
- cicd
- 중간 장소 추천
- 불변객체
- Spring
- JPA
- 객체지향 쿼리 언어
- 중간 지점 찾기
- K3S
- ddd
- 큐시즘
- AWS
- 모임 장소 추천
- Docker cache
- Domain Driven Design
- 도메인 주도 개발 시작하기
- 이펙티브자바
- springboot
- Container Registry
- 모이삼
- 최범균
- Docker Layer
- 한국대학생it경영학회
- 중간 지점 추천
- 자바 ORM 표준 JPA 프로그래밍
- GitHub Actions
- 약속 장소 추천
- java
- kusitms
- Today
- Total
목록Docker Layer (2)
코딩은 마라톤
요새 AWS로 마이그레이션을 진행하고 있다.마이그레이션을 진행하기 앞서, 배포 과정에서의 문제점을 살펴보고 개선할 수 있는 부분은 개선하고자 했다. 서버 로그를 살피고 있던 도중, 어느샌가 스프링 애플리케이션 초기 실행 시간이 40초에 근접했다.사실 나는 Github Actions가 돌아가는 것이 배포의 시작이자 끝이라 생각했다.하지만 애플리케이션 초기 실행 시간, 그리고 배포된 Docker Image를 Pull 하는 과정에 대해선 간과하고 있었다. 초기 실행 시간을 줄일 순 없을까?배포 과정에서 도커 이미지를 만들고 push, pull 과정에서 개선할 수 없을까?그래서 나는 위 두 가지의 고민을 해결하고자 찾던 도중 "Layered Jar"를 알게 되었다. Layered Jar흔히 `./gradlew..
현재 Github Actions와 Docker를 이용해 CICD를 구축했다. 대략 1분 30초 정도 소요되는데 이 시간을 줄일 수 있는 방법이 있을지 찾아보다가 도커 캐시를 이용하면 시간을 단축할 수 있다고 알게 되었다. Docker Layer, Cache 도커 캐시를 관리하기 위해선 도커 레이어를 먼저 알아볼 필요가 있다. 도커 이미지는 Dockerfile의 명령어들이 차례로 실행되면서 레이어를 생성한다. ubuntu는 A, B, C로 구성되어있고 그 ubuntu를 베이스로 가진 nginx 이미지는 nginx만 추가된다. 만약 레이어를 사용하지 않으면 Dockerfile 명령어가 실행되면서 동일한 작업이 반복되어 파일 용량이 커지고 이미지 생성 시간이 길어지게 되는 단점이 있다. 따라서 레이어 방식을 ..
