在与WORKDIR不同的文件夹中执行脚本容器内的脚本

我在我的docker容器:这是我的工作目录

root@19b84a014662:/usr/src/ghost# 

我有一个脚本:

 root@19b84a014662:/ 

我能够cd /和执行脚本。 但是我需要从我的docker-compose文件中执行脚本。 我试过了

 ./test.sh 

但是这实际上意味着它在/usr/src/ghost/search脚本,而不是/如何在/我的容器中执行脚本?

例如:我SSH入我的容器:

 root@19b84a014662:/usr/src/ghost# ls Gruntfile.js LICENSE PRIVACY.md README.md config.example.js config.js content core index.js node_modules npm-shrinkwrap.json package.json 

我在我的容器的根目录中有一个脚本。 我想要执行它:

 ./test.sh 

它只显示文件夹/脚本在/usr/src/ghost而不是/

 root@19b84a014662:/usr/src/ghost# ./ content/ core/ node_modules/ 

只需要replace你的./test.sh

 /test.sh 

因为./意味着你从当前目录(在这个例子中是工作目录/usr/src/ghost/ )开始。 尽pipe这/意味着你从根目录开始,那就是你想要做的。

或者,您可以切换到根目录并使用下面的&& concatenator在一个命令中执行脚本。 但我会推荐以上。

 cd / && ./test.sh