У меня есть следующая структура проекта:Докер-Compose: всегда получить не удается найти указанный Dockerfile
WebApp
-- docker-compose.yml
-- Dockerfile
-- docker
-- docker-gc
--Dockerfile
docker/docker-gc
является мерзавец подмодуль, который я создал, прежде чем использовать эту команду:
git submodule add [email protected]:spotify/docker-gc.git docker/docker-gc
в докер -compose, я пытаюсь запустить Dockerfile в docker-gc
. Вот моя служба:
gc:
container_name: docker-gc
build: ./docker/docker-gc
dockerfile: ./docker/docker-gc/Dockerfile
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /etc:/etc
Но я всегда получаю ошибку:
Cannot locate specified Dockerfile ./docker/docker-gc/Dockerfile
Я пробовал много способов, таких как docker/docker-gc/Dockerfile
или /docker/docker-gc/Dockerfile
без результата. Связана ли эта проблема с symlink (из-за природы подмодуля git). Скажите, пожалуйста, как я могу это исправить.
Что произойдет, если вы удалите атрибут 'dockerfile' из файла' docker-compose.yaml'? Должен ли он автоматически использовать «Dockerfile» из указанного каталога 'build'? – nwinkler
@nwinkler приятно. оно работает. так здесь что-то не так? в случае, если я хочу использовать другой 'Dockerfile'? (например: 'Dockerfile-dev' для среды dev). thanks –
Просто укажите имя файла в атрибуте dockerfile, я думаю, что он разрешен в каталоге сборки. – nwinkler