我是 docker 的新手,我正在使用docker build -t control .
构建下面的 docker 文件 它成功构建,没有错误,特别是它说它制作了control
目录。然后我尝试用docker run control
运行图像,但它给出一个错误,说它找不到control/control_file/job.py
docker 在哪里创建control
目录。它是否在我看不见的容器中?因为我看不到它在任何地方创建,我不确定如何调试?
FROM python:2
RUN pip install requests
&& pip install pymongo
RUN mkdir control
COPY control_file/ /control
ENV PYTHONPATH="/control:$PYTHONPATH"
RUN export PYTHONPATH=/control:$PYTHONPATH
CMD ["python","/control/job.py"]
这是目录结构:
├── control_file
│ ├── insert_to_container.py
│ ├── ip_path
│ ├── job.py
│ └── read_info.py
└── Dockerfile
job.py
现在在您的 Docker 构建中处于/control
状态。
使用COPY
命令将control_file/
中的所有内容复制到新目录/control
中。
将最后一行更改为:
CMD ["python", "control/job.py"]
您的 docker 文件有错误,请在下面找到正确的一个,control_file目录应该在构建目录中可用(您构建 docker 映像的位置)....job.py 应具有执行权限
FROM python:2
RUN pip install requests
&& pip install pymongo
RUN mkdir -p /control/control_file
COPY control_file/ /control/control_file
CMD [ "python" , "/control/control_file/job.py" ]