Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在我的例子中,如何在docker中设置python环境?_Python_Docker_Dockerfile - Fatal编程技术网

在我的例子中,如何在docker中设置python环境?

在我的例子中,如何在docker中设置python环境?,python,docker,dockerfile,Python,Docker,Dockerfile,我正在尝试在docker中设置python环境 我的docker图像如下所示: 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

我正在尝试在docker中设置python环境

我的docker图像如下所示:

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 run -ti -v ~/folder_in_host:/var/log/folder_in_container <IMAGE NAME HERE>
使用此生成命令:

docker build -t ml-python-2.7 .
形象建立后,, 我跑

我的样本
test.py

print('test here')
它在我第一次运行此命令时起作用

docker run -it --rm --name ml-container  ml-python-2.7 python test.py
但是在我将
test.py
更改为
print('second test')
然后再次运行上面的命令,它仍然在这里输出test

我如何确保它自动更新,或者是否有更优雅的方法来做到这一点


谢谢

除非您提交更改,否则Docker不会将您对容器中文件所做的更改存储在容器中。如果希望它这样做,则需要执行Docker提交,如:

docker提交

或者,您可以将本地文件夹装载到docker映像,如下所示:

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 run -ti -v ~/folder_in_host:/var/log/folder_in_container <IMAGE NAME HERE>
docker run-ti-v~/folder\u在\u主机中:/var/log/folder\u在\u容器中

您只是在当前目录中修改test.py吗?正在运行的docker容器无法看到当前目录中的内容。请在docker中装载当前目录(使用-v选项),进入bash inside docker并编辑file@vumaasha你能给我举个例子吗?@Jwqq检查我的答案