ドッカーの初心者で、ドッキング用のコンテナで開発しようとしています。私はコードの一行の変更を行い、コンテナを再実行しようとするたびに問題を抱えています。ドッカーは、画像を最初から作り直すことになります。 キャッシュを最大限に活用するために、プロジェクトを正しく設定するにはどうすればよいですか?私がソースコードにいくつかの変更を加えるたびに、apt-get
とpip install
(btw私はPythonで開発しています)をすべて再インストールする必要はありません。誰でも私が何が欠けているか考えている。助けをお待ちしています。ドッカーがコードを変更した後に画像を最初から作成しないようにします。
私の現在のドッキングウィンドウのファイル:彼らはもはやキャッシュヒットを持っていないのでDockerfileのキャッシュ休憩したら
FROM tiangolo/uwsgi-nginx-flask:python3.6
# Copy the current directory contents into the container at /app
ADD ./app /app
# Run python's package manager and install the flask package
RUN apt-get update -y \
&& apt-get -y install default-jre \
&& apt-get install -y \
build-essential \
gfortran \
libblas-dev \
liblapack-dev \
libxft-dev \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
ADD ./requirements.txt /app/requirements.txt
RUN pip3 install -r requirements.txt
推奨読書:[Dockerfilesを書くためのベストプラクティス](https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/) – jwodder
コードの場合、ボリュームをコードに指す –
私は生産のためだけにコンテナにコードを含めることを好む。開発のためにコンテナ内にコードをマウントすることができます –