Docker는 기본 파일명으로 Dockerfile만 인식한다.
대소문자까지 완전히 동일해야 한다.
즉, 디렉토리에서 Dockerfile 이름만 자동으로 읽힌다:
만약 이름이 다음과 같다면 자동 인식되지 않는다:
dockerfile
DockerFile
DOCKERFILE
my.Dockerfile
이때 Docker는 “어떤 파일을 Dockerfile로 써야 할지” 모르기 때문에 명시적으로 알려주는 옵션을 사용해야 한다.
2. f 플래그란?
f는-file의 약자로
Docker에게 사용해야 할 Dockerfile의 파일명을 직접 지정하는 옵션이다.
예:
docker build -f ./dockerfile -t gitblog .
이 뜻은:
- “
./dockerfile이라는 파일을 Dockerfile로 사용해라” - “현재 디렉토리를 빌드 컨텍스트로 삼아라”
를 의미한다.
자동 인식 (파일명: Dockerfile)
docker build -t gitblog .
직접 지정 필요 (파일명: dockerfile)
docker build -f dockerfile -t gitblog .
디렉토리 구조 예
project/
├── dockerfile ← 자동 인식 안 됨
├── Dockerfile ← 자동 인식됨
└── app.py