docker - 有人能解释一下第 5 行是什么意思吗?即添加。$HOME_DIR 在 docker 文件中是什么意思?
问题描述
我的 Dockerfile 的第 5 行有问题。我不明白那是什么意思。
FROM python:3.7-alpine
LABEL author= APPLE
LABEL company= PINEAPPLE
ARG HOME_DIR='/schooldata'
ADD . $HOME_DIRECT ##[ this line ]
EXPOSE 5000
WORKDIR $HOME_DIRECT
RUN pip install -r requirements.txt
ENTRYPOINT ["python", "app.py"]
解决方案
这里 :
ADD . $HOME_DIRECT
ADD
执行从源到当前构建图像的资源复制,具有以下特性:如果将其识别为存档(tar,zip ...),则复制其内容,否则复制包含的文件/目录,例如。
接下来的两个参数是 的源资源和目标资源ADD
。
.
意味着源是构建上下文。构建上下文是docker build
命令的最后一个参数:通常我们指定.
诸如docker build FooTag .
代表执行命令的当前目录,docker build
但可能不同。$HOME_DIRECT
是构建映像中副本的目标目录。
附带说明一下,它具有相当复杂的行为(它也可能接受 URL 作为源,因此仅在特殊情况下(URL 和复制存档的内容)才ADD
应优先使用它。
在大多数情况下,这确实更好:COPY
COPY . $HOME_DIRECT
推荐阅读
- node.js - 如何在多个 Express 路由中(在不同的文件中)使用一个坚韧的 cookie cookie jar?
- ios - NSDate 返回错误的时间
- javascript - 保存为pdf时大写并添加ID的空格
- string - 在 mule 3 中将“application/x-www-form-urlencoded”类型的字符串有效负载转换为“application/java”类型的映射
- python - Nginx 没有指向 gunicorn 套接字,返回 404 Not Found
- android - 使用多个回栈时,片段内的片段不持久
- javascript - 如何在 yAxis chartJs 上的 yAxis 值之间放置指标?
- scapy - 访问每个数据包的 RAW 字段
- php - 下拉列表第一个值正在保存到数据库中,其他值没有保存
- javascript - 可以与承诺一起获得价值吗?