Docker内部版本表示目录已经存在,但事实并非如此



在dockerfile中,我正在创建目录/var/log/nginx,因为它不存在于容器中,即使nginx.conf被设置为将日志保存在/var/log/nginx 中

然而,docker构建失败,表示目录/var/log/nginx已经存在。但事实并非如此。

Docker构建错误:

root@jsd-user-management:~/flask# docker build -t flask_app .
Sending build context to Docker daemon  716.8kB
Step 1/6 : FROM tiangolo/uwsgi-nginx-flask:python3.5
---> dea8fea96656
Step 2/6 : RUN mkdir  /var/log/nginx
---> Running in 9e9ff86747a7
mkdir: cannot create directory ‘/var/log/nginx’: File exists
The command '/bin/sh -c mkdir  /var/log/nginx' returned a non-zero code: 1

Docker集装箱内部:

root@jsd-user-management:~/flask# docker exec -it flask_jsd-user-management_1 bash
root@c6d43f610a51:/app/app# ls /var/log
root@c6d43f610a51:/app/app#

令人惊讶的是,当我尝试从容器内部创建目录时,它是有效的。但是,它内部没有填充日志。

您可以使用-p标志。

-p, --parents如果存在,则无错误,根据需要制作父目录

RUN mkdir -p /var/log/nginx
RUN ls /var/log/

这可能是母公司董事失踪的情况。

最新更新