Docker 動(dòng)態(tài)目錄是Docker容器的一種特殊指定方式。它允許您動(dòng)態(tài)地將主機(jī)的目錄掛載到容器中,而不必在創(chuàng)建容器時(shí)指定它們。這使得更清晰地控制容器中的內(nèi)容。
要使用動(dòng)態(tài)目錄掛載,您需要以如下格式指定掛載目錄:
-v /path/on/host:/path/in/container
其中,/path/on/host
是主機(jī)上您希望掛載的目錄的位置,/path/in/container
是擬定存放掛載內(nèi)容在容器中的位置。
在運(yùn)行Docker文件時(shí),您無(wú)需指定掛載目錄。它可以在運(yùn)行時(shí)通過(guò)Docker的環(huán)境變量來(lái)實(shí)現(xiàn)。
在下面的示例中,我們將演示如何通過(guò)Docker動(dòng)態(tài)目錄掛載來(lái)運(yùn)行一個(gè)Node.js應(yīng)用程序:# Dockerfile
FROM node:10
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["npm", "start"]
現(xiàn)在,我們需要運(yùn)行這段代碼并指定一個(gè)動(dòng)態(tài)目錄。我們可以通過(guò)以下命令實(shí)現(xiàn):docker run -v $(pwd):/app -p 3000:3000 node-app
在這個(gè)命令行示例中,$(pwd)
是主機(jī)當(dāng)前工作目錄的路徑。它被指定為動(dòng)態(tài)目錄,并將該目錄加載到容器的/app
中。我們還將容器上的端口3000映射到主機(jī)上的端口3000。
總的來(lái)說(shuō),Docker動(dòng)態(tài)目錄在簡(jiǎn)化容器的掛載和文件處理方面具有很大優(yōu)勢(shì)。它使得容器的配置和管理變得更加靈活和清晰。