在 docker 的多阶段构建中设置正确的 WORKDIR

setting correct WORKDIR in a multi-stage build for docker

我希望构建一个可以启动容器的 docker 映像,我可以在其中使用节点版本 14 和 lz4。我目前拥有的 docker 文件是:

FROM node:14-alpine

WORKDIR /app

RUN apk update
RUN apk add --upgrade lz4

node --versionlz4 --help 似乎 运行 可以使用 docker run 命令 - 但我想问一下是否有特定的 WORKDIR 我应该在 docker 文件中使用以遵循任何最佳实践(如果存在),或者我将 WORKDIR 设置为什么无关紧要?请注意,我不确定我未来的所有需求,但我可能需要在未来使用此图像构建其他图像,因此我想确保 WORKDIR 设置正确。

WORKDIR 应该设置为在 docker 文件中设置后续 docker 命令的工作目录,这使得事情有点容易理解,因为路径将相对于工作目录。

默认情况下,/ 根目录是设置的工作目录。不设置任何其他工作目录,所有命令都可以有绝对路径,这样更容易理解。

其实没什么大不了的。此外,您可以随时为您的未来构建更改它。