我正在查看以下具有以下命令的jboss / wildfly docker文件:
mv $HOME/wildfly-$WILDFLY_VERSION $JBOSS_HOME
其中$WILDFLY_VERSION=17.0.1.Final
,$JBOSS_HOME=/opt/jboss/wildfly.
因此,结果命令转换为:
mv $HOME/wildfly-17.0.1.Final /opt/jboss/wildfly
在文件的后面,我们以如下方式启动wildfly:
CMD ["/opt/jboss/wildfly/bin/standalone.sh", "-b", "0.0.0.0"]
因此,我假设mv
上面的命令将$HOME/wildfly-17.0.1.Final
目录的内容放入/opt/jboss/wildfly
目录中。
但是,如果我尝试在本地计算机(ubuntu 18.04)上从dockerfile重新创建步骤,则会mv $HOME/wildfly-17.0.1.Final /opt/jboss/wildfly
得到以下目录结构/opt/jboss/wildfly/wildfly-17.0.1.Final
。也就是说,wildfly-17.0.1.Final
目录本身被复制到中/opt/jboss/wildfly
,而不是其内容中。有人可以解释一下为什么我在本地得到这个结果吗?
$JBOSS_HOME
路径不存在。
该mv
命令实际上是用$HOME/wildfly-17.0.1.Final
文件夹替换不存在的目录。话虽这么说,的内容$HOME/wildfly-17.0.1.Final/
将移动到$JBOSS_HOME
将文件夹的名称从“ wildfly-17.0.1.Final”替换为“ wildfly”。
简单的例子如下:
创建一个空目录并触摸其中的文件,然后尝试执行以下操作:
mv dir /var/lib/non_existing_folder
dir将原样移动并替换为“ non_existing_folder”。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句