碼頭工新手試圖在碼頭集裝箱中開發;我有一個問題,每次我對代碼進行單行更改並嘗試重新運行容器時,docker都會重新構建需要很長時間的圖像,我應該如何正確設置項目才能最大限度地利用緩存?很確定,無需重新安裝所有apt-get
和pip install
(每當我對源代碼進行一些更改時,我都在用python開發)。任何人都知道我錯過了什麼。感謝任何幫助。防止碼頭在更改代碼後從頭開始構建圖像
我現在的搬運工文件:
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
對於代碼,您可以使用卷指向您的代碼 –
我更喜歡將代碼包含到容器中,僅用於生產。對於開發,您可以在容器中安裝代碼 –