Skip to content

Consider using docker build --no-cache . #102

@jamesaoverton

Description

@jamesaoverton

We're still trying to figure out the best way to use Docker with DROID. For many projects we use the ODK image and then want to install a few more Ubuntu and Python packages. Here's a current example Dockerfile:

FROM obolibrary/odkfull

COPY requirements.txt /tools/ihcc-requirements.txt
RUN pip install -r /tools/ihcc-requirements.txt

RUN apt-get install aha dos2unix sqlite3

When the requirements.txt file is changed, using the Rebuild container button doesn't always pick up those changes. I've tried a bunch of things and the behaviour I'm seeing is inconsistent. Sometimes Docker rebuilds everything and sometimes it uses a cache, like this:

Sending build context to Docker daemon  175.7MB

Step 1/4 : FROM obolibrary/odkfull
 ---> 742aa3c8a1a2
Step 2/4 : COPY requirements.txt /tools/ihcc-requirements.txt
 ---> Using cache
 ---> 10327ccbb6d3
Step 3/4 : RUN pip install -r /tools/ihcc-requirements.txt
 ---> Using cache
 ---> c155fcf2c209
Step 4/4 : RUN apt-get install aha dos2unix sqlite3
 ---> Using cache
 ---> 5bc57b61a1f0
Successfully built 5bc57b61a1f0
Successfully tagged ihcc-master:latest
e8b4037000439cf79073fc38c24c92cf2036d802647094ce6494905741b481b7
IHCC-master

It think it would be better to specify --no-cache option here: https://github.com/ontodev/droid/blob/master/src/droid/branches.clj#L203

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions