WORKDIR 与 ENV
WORKDIR
# 设置工作目录(不存在会自动创建)
WORKDIR /app
# 后续指令基于此目录
COPY . . # 复制到 /app/
RUN npm install # 在 /app/ 执行
CMD ["node", "server.js"] # 在 /app/ 启动
ENV
# 设置环境变量
ENV NODE_ENV=production
ENV APP_HOME=/app
ENV PATH=$APP_HOME/bin:$PATH
# 可以在构建和运行时使用
RUN echo $NODE_ENV
对比
# ❌ 不推荐:用绝对路径
COPY . /app
WORKDIR /app
RUN npm install
# ✅ 推荐:用 WORKDIR
WORKDIR /app
COPY . .
RUN npm install
小结
| 指令 | 作用 |
|---|---|
WORKDIR | 设置工作目录 |
ENV | 设置环境变量 |