Где docker-compose up хранит свои изображения? - PullRequest
0 голосов
/ 23 мая 2018

Я знаю, что если я изменю свой Dockerfile или каталог сборки, я должен запустить docker-compose build.Это, безусловно, подразумевает, что docker-compose имеет некоторый кеш где-то из своих уже созданных образов.

Где это?Как мне его очистить?

Я бы хотел вернуться в состояние, когда docker-compose up вынужден выполнить начальные шаги сборки, без необходимости запуска docker-compose build.

Я запустил docker stop $(docker ps -aq) и docker X prune (для X в контейнере, образе, томе, сети), но docker-compose up по-прежнему отказывается выполнять шаги сборки в моем Dockerfile.

Илия совершенно не понимаю, как работает docker-compose?

Ответы [ 2 ]

0 голосов
/ 23 мая 2018

docker-compose использует изображения, которые вы можете видеть с помощью docker images:

$ docker images 
REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
docker_ubuntu                 latest              a7dc4f9bbdfb        19 hours ago        158MB
ubuntu                        16.04               0b1edfbffd27        3 weeks ago         113MB
hello-world                   latest              f2a91732366c        6 months ago        264MB

К изображениям docker-compose добавляется (обычно) имя каталога, под которым вы работаете docker-composeв. Так, для меня, docker_ubuntu изображение.

docker image prune считает, что изображения используются, поэтому он не сокращает их.

Чтобы избавиться от докерасоставьте изображение, вам нужно удалить его явно:

docker image rm docker_ubuntu
0 голосов
/ 23 мая 2018

Вы можете передать дополнительный аргумент (--no-cache), чтобы пропустить использование кэша во время процесса сборки.

    docker@default:~$ docker-compose build --help
    Build or rebuild services.

    Services are built once and then tagged as `project_service`,
    e.g. `composetest_db`. If you change a service's `Dockerfile` or the
    contents of its build directory, you can run `docker-compose build` to rebuild it.

    Usage: build [options] [--build-arg key=val...] [SERVICE...]

    Options:
        --compress              Compress the build context using gzip.
        --force-rm              Always remove intermediate containers.
        --no-cache              Do not use cache when building the image.
        --pull                  Always attempt to pull a newer version of the image.
        -m, --memory MEM        Sets memory limit for the build container.
        --build-arg key=val     Set build-time variables for services.
    docker@default:~$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...