2014-09-27 2 views
29

Dockerfiles의 이름을 지정하는 방법이 다소 복잡합니다.Dockerfiles의 이름을 지정하는 방법

GitHub의 예제는 Dockerfile이라고 할 수 있습니다.

나는 그들에게 이름과 확장명을 부여합니까? 만약 그렇다면? 아니면 Docker 파일이라고 부를까요?

답변

39

hub.docker.com에서 autobuilder를 사용하려면 dockerfile의 이름을 변경하지 마십시오. docker 파일에 확장명을 사용하지 말고 null로 두십시오. 파일 이름은 없어야합니다 : 이것이 사실 보이지만, 개인적으로는 빈약 한 디자인으로 날 것으로 보인다

+26

같은 디렉토리에 여러개의 Dockerfiles가 있다면 어떨까요? –

+0

@VisgeanSkeloru 비록 조금이라도 혼란 스러울지라도 필요한 경우 다른 디렉토리에 넣을 수 있습니다. 아무리 보아도 컨벤션이 이미 설정된 것처럼 보입니다 – orustammanapov

12

hubbuilder.com에서 autobuilder를 사용하려는 경우 Dockerfile이어야합니다. 그래서 거기 :)

+2

는 이유로 코멘트없이을 downvoted : 잘 수행. 나는 지금 받아 들여진 해결책과 똑같은 (정확한) 대답을, 더 일찍 말하면 더 적은 단어로 주었다. –

9

도움 (확장자 전혀)

Dockerfile 

희망. 물론 기본 이름 (확장자 포함)을 사용하고 다른 이름을 허용하고 명령에 대한 도커 파일의 이름을 지정하는 방법이 있어야합니다.

확장 기능을 사용하면 응용 프로그램을 해당 확장 유형에 연결할 수 있기 때문에 유용합니다. MacOSX에서 Dockerfile을 클릭하면 Unix 실행 파일로 취급되어 실행을 시도합니다.

Docker 파일에 확장명이있는 경우 OS에 특정 응용 프로그램으로 시작하도록 알릴 수 있습니다. 내 텍스트 편집기 응용 프로그램. 확실하지는 않지만 현재의 동작은 파일 허가와 관련이있을 수 있습니다.

13

컨테이너마다 Dockerfile (확장자 없음)이있는 디렉토리가 있어야한다고 생각합니다. 예 :

/db/Dockerfile 
    /web/Dockerfile 
    /api/Dockerfile 

디렉토리 이름 만 사용하면 Docker 파일을 찾을 수 있습니다. 예 :

docker build -f ./db . 
+0

예제에서 3 개의 컨테이너를 만들까요? – alvas

+0

@alvas 네, 그렇습니다. – garryp

+0

나는이 접근법을 스스로 좋아합니다. – Hcabnettek

0

Dockerfile 하나의 도커 파일 (디렉토리 당) 만 있으면 좋다. 동일한 디렉토리에 여러 도커 파일이 필요한 경우 원하는 모든 표준을 사용할 수 있습니다. 이유가있을 경우 입니다. 환경이 충분히 차이가 있기 때문에 최근의 프로젝트에서 AWS 고정 표시기 파일 및 지역 dev에 환경 파일이 있었다 :

Dockerfile Dockerfile.aws

0

을 vscode, 나는 dev.Dockerfile를 사용하고 아직도 제대로 인식합니다.

그래서 같은 폴더에 여러 Dockerfiles 명명 내 전략은 다음과 같습니다 단지 드라이브 - 바이 누구든지

purpose.Dockerfile

관련 문제