1 분 소요

이 글이 글을 참고했다.

ADD - 파일을 이미지에 추가

  • 파일을 이미지에 추가합니다.
  • 명령어는 ADD <Host OS의 파일 경로> <이미지 내에서 파일이 위치할 경로> ADD 파일명 이미지 내부의 경로만 적을 시, 이미지 내부의 파일명은 Host OS의 파일명을 따라갑니다. ex) ADD file.sh /home ==> /home/file.sh 생성
    • 🌟 Host OS의 파일경로는 현재 컨텍스트 상위 파일, 디렉터리나 절대경로는 사용 불가
    • 🌟 <이미지 내부의 경로>는 반드시 절대경로로 작성합니다.
  • 와일드 카드(*)를 이용하여 특정 파일만 복사도 가능합니다 ex)ADD *.sh /home/
  • Local에 있는 압축파일(tar.gz, tar.bz2, tar.xz)은 압축을 해제하고 tar를 풀어서 추가됩니다. ex) ADD compress.tar.gz / ==> 이미지의 / directory에 압축 해제된 파일들이 추가 됨
  • 인터넷에 있는 파일 URL은 압축만 해제한 뒤 tar파일만 추가됩니다 ex) ADD http://file.co.kr/file/1234.tar.gz / ==> 이미지의 / directory에 1234.tar.gz 파일 생성
  • Directory 전체를 추가 시, .dockerignore 파일에 설정한 파일과 디렉터리는 제외됩니다.
  • ADD로 추가되는 파일은 root root 기존 권한을 따릅니다 (단, URL로 추가된 파일의 경우 600)

COPY - 파일을 이미지에 복사

  • 파일을 이미지에 추가합니다.
    • ADD와는 달리 COPY는 압축 파일을 추가할 때 압축을 해제하지 않고, 파일 URL도 사용할 수 없습니다.
  • 명령어는 COPY <Host OS의 파일 경로> <이미지 내에서 파일이 위치할 경로>
    • COPY 파일명 이미지 내부의 경로만 적을 시, 이미지 내부의 파일명은 Host OS의 파일명을 따라갑니다. ex) ADD file.sh /home ==> /home/file.sh 생성
    • 🌟 Host OS의 파일경로는 현재 컨텍스트 상위 파일, 디렉터리나 절대경로는 사용 불가
    • 🌟 <이미지 내부의 경로>는 반드시 절대경로로 작성합니다.
  • 와일드 카드(*)를 이용하여 특정 파일만 복사도 가능합니다 ex)COPY *.sh /home/
  • Local에 있는 압축파일(tar.gz, tar.bz2, tar.xz)은 압축을 해제하지 않고 그대로 복사 됩니다.
  • 인터넷에 있는 파일 URL은 사용 불가.
  • Directory 전체를 추가 시, .dockerignore 파일에 설정한 파일과 디렉터리는 제외됩니다.
  • COPY로 추가되는 파일은 root root 기존 권한을 따릅니다


💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기

태그:

카테고리:

업데이트: