[Docker] .dockerignore 사용해 컨테이너에 복사되지 말아야 할 파일 정의하기

2025. 1. 29. 07:40·Docker
반응형

.dockerignore을 사용하지 않을 때의 문제점

앞선 글 에서 만들어진 컨테이너 내부를 보면 다음과 같은 파일들이 추가된 것을 볼 수 있다.

 

이 중 build 폴더와 .git 폴더 그리고 .idea 폴더는 내부에서 자동으로 생성되거나 스프링 앱을 실행하는데 전혀 사용되지 않는 폴더들로 컨테이너로 복사하지 않아도 된다. 

이런 폴더들을 복사하지 않기 위해 Dockerfile에서 COPY를 사용할 때 세밀하게 제어해도 괜찮지만, 가장 좋은 방법은 .dockerignore 파일을 사용하는 것이다.

 

.dockerignore 사용해 복사되지 말아야 할 파일과 폴더 정의하기

.dockerignore는 git의 .gitignore과 매우 비슷하다. 단순히 내부에 컨테이너로 복사되지 말아야 하는 경로나 파일을 추가하면 이 경로나 파일은 복사되지 않는다.

 

위 스크립트에서는 build/, .idea, .git 경로를 복사하지 않도록 설정했다.

.dockerignore 동작 확인하기

.dockerignore가 동작하는지 확인하기 위해 이미지를 다시 빌드해 컨테이너를 실행해보자.

 

그러면 다음과 같이 컨테이너 내부에 .git과 .idea 폴더가 없는 것을 확인할 수 있고, build 폴더는 스크립트가 실행돼 새로 빌드된 것을 확인할 수 있다.

반응형
저작자표시 비영리 변경금지 (새창열림)

'Docker' 카테고리의 다른 글

[Docker] docker network 사용해 컨테이너 간 통신하는 방법 완벽 정리  (0) 2025.01.31
[Docker] Dockerfile내부, .env 파일 혹은 터미널을 사용해 환경 변수 설정하는 방법 한 번에 정리하기  (0) 2025.01.30
[Docker] Bind Mount 통해 호스트 머신의 경로를 컨테이너 경로와 연결하기  (0) 2025.01.28
[Docker] Named Volume 이란 무엇인가? 사용 방법과 특징 정리  (0) 2025.01.27
[Docker] Anonymous Volume(익명 볼륨) 한 번에 정리하기  (0) 2025.01.26


'Docker' 카테고리의 다른 글
  • [Docker] docker network 사용해 컨테이너 간 통신하는 방법 완벽 정리
  • [Docker] Dockerfile내부, .env 파일 혹은 터미널을 사용해 환경 변수 설정하는 방법 한 번에 정리하기
  • [Docker] Bind Mount 통해 호스트 머신의 경로를 컨테이너 경로와 연결하기
  • [Docker] Named Volume 이란 무엇인가? 사용 방법과 특징 정리
심플코드
심플코드
프로그래밍을 어렵지 않게 풀어서 설명하는 기술 블로그
    반응형
  • 심플코드
    심플코드
    심플코드
  • 전체
    오늘
    어제
    • 분류 전체보기 (96)
      • 안드로이드를 위한 Coroutines (2)
      • Unit Testing (19)
      • GitHub Actions (0)
      • 공식 문서 번역 (35)
        • Coroutines 공식 문서 (35)
      • 알고리즘 (7)
        • Kotlin 자료구조 (0)
        • 알고리즘 (7)
        • Kotlin으로 구현하는 자료구조 (0)
      • 코딩 테스트 (0)
      • Deep Learning (0)
      • Machine Learning Math (17)
        • Linear Algebra (17)
      • ML (0)
      • Docker (15)
      • Kubernetes (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

    • 코틀린 코루틴의 정석 책 출간 소식
  • 인기 글

  • 태그

    코루틴 채널
    도커
    Coroutines Channel
    mockito
    코루틴
    TensorFlow
    unit testing
    unit test
    coroutine
    Docker
    Coroutines Flow
    Coroutines
    컨테이너
    Machine Learning
    코루틴 Flow
    numpy
    Kotlin
    Coroutines Context
    junit
    pytorch
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
심플코드
[Docker] .dockerignore 사용해 컨테이너에 복사되지 말아야 할 파일 정의하기
상단으로

티스토리툴바