在使用 docker run
命令啟動容器時,最後指定的命令(例如 ./start.sh
)通常是在容器的工作目錄中執行的。預設情況下,Docker 容器的工作目錄是 /
,但可以透過 -w
或 --workdir
引數來指定不同的工作目錄。
例如,如果你執行以下命令:
<BASH>
docker run -it --name mycontainer -v /host/path:/container/path -w /container/path myimage ./start.sh
在這個例子中,./start.sh
會在容器的 /container/path
目錄中執行,因為我們使用了 -w /container/path
引數來指定工作目錄。
如果沒有指定 -w
引數,./start.sh
會在 Dockerfile 中定義的 WORKDIR
中執行。如果 Dockerfile 中也沒有定義 WORKDIR
,那麼預設的工作目錄就是 /
。
你可以透過以下方法檢視容器的工作目錄:
- 檢查 Dockerfile:看看是否有
WORKDIR
指令。 - 檢查
docker run
命令中是否使用了-w
引數。 - 在容器內部執行
pwd
命令來確認當前的工作目錄