【发布时间】:2022-01-23 07:43:59
【问题描述】:
我有一个每天运行的 python 应用程序来下载图像并将它们保存到指定的文件夹中,每天创建这样的文件夹/home/ubuntu/images/yyyymmdd。
我在 ubuntu 20 上构建了我的 python 应用程序的 docker 容器。当我尝试通过挂载主机目录来运行应用程序时,日志消息打印文件夹创建 /home/ubuntu/images/20220123 但我看不到任何文件夹。
我检查了 docker 文件夹 /var/lib/docker 并发现 随机哈希 是在文件夹 containers 和 overlay2 内创建的。因此,我尝试使用以下两个目录进行挂载,但没有运气。
sudo docker run -t -i -v /home/ubuntu/images:/var/lib/docker/containers --network=host testapp/img-downloader:0.0.1
sudo docker run -t -i -v /home/ubuntu/images:/var/lib/docker/overlay2 --network=host testapp/img-downloader:0.0.1
我可以看到在图像文件夹中创建的数据文件夹和图像文件是这样保存的
/var/lib/docker/overlay2/d52bcf61cae2e563c3c8561bab53b4bb2dd2ea2d633a14d40c96d7992fffae28/diff/home/ubuntu/images/20220123
我在这里缺少什么,因此它不会将图像保存到主机目录,例如 /home/ubuntu/images/20220123,而不是内部 docker 容器。
我的 Dockerfile 如下 -
FROM alpine:3.14
ENV PYTHONUNBUFFERED=1
RUN apk add --update --no-cache python3-dev mariadb-dev gcc musl-dev g++ && ln -sf python3 /usr/bin/python
RUN python3 -m ensurepip
RUN pip3 install --no-cache --upgrade pip setuptools
COPY ./requirements.txt /requirements.txt
WORKDIR /
RUN pip3 install -r requirements.txt
COPY ./ /
ENTRYPOINT [ "python3" ]
CMD [ "./main.py" ]
请在这里帮忙。谢谢
【问题讨论】:
标签: python docker ubuntu docker-compose dockerfile