Dockerfile中ADD文件的路径问题
首先看一个案例当前目录的文件如下:
1
2
3
4
5
6
7
8
# tree
.
├── 1
├── 2
│ └── 3
└── Dockerfile
1 directory, 3 files
Dockerfile 文件内容如下:
1
2
3
FROM node:14.20.1-buster
ADD * /code/
WORKDIR /code
本意是想把当前目录下的所有文件放到容器内的 /code 目录, 这个时候使用 docker build 后无法启动, 进入容器, 打开 /code 一看:
1
2
3
4
5
6
7
8
9
# docker run -it test bash
root@cb7543054ef2:/code# ls -al
total 12
drwxr-xr-x 2 root root 4096 Sep 22 08:47 .
drwxr-xr-x 1 root root 4096 Sep 22 08:47 ..
-rw-r--r-- 1 root root 0 Sep 22 08:45 1
-rw-r--r-- 1 root root 0 Sep 22 08:45 3
-rw-r--r-- 1 root root 75 Sep 22 08:46 Dockerfile
root@cb7543054ef2:/code#
会发现, 本来 3 这个文件应该是在 2 这个文件夹内的, 现在统一都跑到了上级目录了, 文件路径完全变了. 自然无法启动. 可以做如下修改:
1
2
3
FROM node:14.20.1-buster
ADD ./ /code/
WORKDIR /code
页:
[1]