我正在尝试在docker中设置我的python环境。
我的码头图像是这样的:
FROM python:2.7
# updating repository
RUN apt-get update
RUN mkdir /usr/src/app
WORKDIR /usr/src/app
COPY requirements.txt requirements.txt
RUN pip install --no-cache -r requirements.txt
EXPOSE 8888
COPY . .
CMD ["python", "test.py"]
使用此构建命令:
docker build -t ml-python-2.7 .
构建图像后, 我跑了
docker run -it --rm --name ml-container ml-python-2.7 python test.py
我的样本test.py
print('test here')
首次运行此命令时,它可以正常工作。
docker run -it --rm --name ml-container ml-python-2.7 python test.py
但在我将test.py
更改为print('second test')
之后
并再次运行上面的命令,它仍然在这里输出测试。
如何确保自动更新或是否有更优雅的方法来执行此操作?
谢谢!
答案 0 :(得分:1)
除非您提交,否则Docker不会将您所做的更改存储到容器内的文件中。如果你想这样做,你需要做一个Docker Commit,如:
docker commit <CONTAINER NAME HERE>
或者您可以将本地文件夹挂载到docker镜像,如下所示:
docker run -ti -v ~/folder_in_host:/var/log/folder_in_container <IMAGE NAME HERE>