You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker build命令执行路径咨询:需进入cowsay目录还是主目录?

关于docker build命令执行路径的疑问解答

Hey there! 我来帮你理清这个问题~

首先得搞懂docker build命令里最后那个.的作用:它代表构建上下文目录——Docker会从这个目录里读取所有构建镜像需要的文件(包括默认找的Dockerfile)。所以核心判断标准是:你的Dockerfile在哪里?

假设你的目录结构是这样的:

mm/  # 你的主目录
└── cowsay/
    ├── Dockerfile  # 构建cowsay镜像的配置文件
    └── 其他构建依赖文件(比如脚本、资源)

那有两种可行的执行方式:

  • 方式1:进入cowsay文件夹执行(推荐)
    先通过cd cowsay进入该目录,然后执行:

    docker build -t mm/cowsay .
    

    这里的.就是当前的cowsay目录,Docker会自动在这里找到Dockerfile,并把整个目录的内容作为构建上下文,这样所有依赖文件都能被正确读取。

  • 方式2:在主目录mm下执行
    如果你不想切换目录,也可以直接指定上下文路径为cowsay文件夹,命令改成:

    docker build -t mm/cowsay ./cowsay
    

    这样Docker会去./cowsay目录里找Dockerfile,效果和方式1一样。

另外补充一句:你用mm/cowsay作为镜像标签非常合适,因为mm是你的Docker Hub用户名,后续如果要把镜像推送到Hub,直接执行docker push mm/cowsay就可以了,完全匹配~

内容的提问来源于stack exchange,提问作者Simke

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:15:53