Это структура моего проекта, две папки и два файла.
context- Dockerfile
тест- test.sh
Вот мой контекст / Dockerfile:
FROM ubuntu:18.04
RUN apt-get -y update
COPY test.sh /usr/local/bin/test.sh
В контекстном каталоге я могу использовать docker build -t test:1.0 -f ./Dockerfile ../test
для создания образа Docker, и другой способ также работаетнормально. (cd
проверить каталог и выполнить docker build -t test:1.0 -f ../context/Dockerfile .
)
Но у меня есть некоторые проблемы с использованием docker-compose
в контекстном каталоге, вот мой docker-compose.yml
:
version: '3'
services:
test:
build:
dockerfile: Dockerfile
context: ../test
image: test:1.0
Когда я запускаю docker-compose build
, всегда получаю эту ошибку:
ОШИБКА: невозможно найти указанный Dockerfile: Dockerfile
Я пробовал dockerfile: ./Dockerfile
, dockerfile: ./
,и dockerfile: .
, но ни один из них не работает.
Я могу использовать только этот способ dockerfile: ../context/Dockerfile
, он работает, но я не думаю, что это лучший способ.
Есть ли лучшие решения, которые могут указывать текущий Dockerfile в docker-compose при использовании внешнего контекста сборки?