首页 > 解决方案 > Docker 如何在 Dockerfile 中保存和恢复 WORKDIR?

问题描述

我有一个来自图像的 Dockerfile。我想修改它并添加一些文件操作,这些操作将与不同的 WORKDIR 相关,而不是 FROM 图像给出的操作。因此,我想在修改 WORKDIR 之前将 WORKDIR 保存到一个变量中,并在我的命令结束后从该变量中恢复 WORKDIR。怎么做?

想要的结果:

Dockerfile 伪代码:

FROM centos:7
some original commands
some original commands
...
var=WORKDIR #save WORKDIR <== how to do that?

WORDIR /my/path/
my commands
my commands

...
WORKDIR = var # restore path that was before <== how to do that?

标签: dockersavedockerfilerestoreworking-directory

解决方案


您可以创建一个环境变量。

ENV WORKDIR=/my/path/
WORDIR $WORKDIR

推荐阅读