docker build
用于基于 Dockerfile
构建镜像。
基本语法:
docker build [OPTIONS] PATH | URL
例如:
docker build -t myapp .
📌 常用参数
参数 | 作用 | 示例 |
---|---|---|
-t | 指定镜像名称 | docker build -t myapp . |
-f | 指定 Dockerfile | docker build -f Dockerfile.prod . |
--build-arg | 传递构建参数 | docker build --build-arg ENV=prod . |
--no-cache | 不使用缓存构建 | docker build --no-cache -t myapp . |
--rm | 构建后删除临时容器 | docker build --rm -t myapp . |
--progress | 设置构建日志模式 | docker build --progress=plain . |
📌 构建示例
1️⃣ 使用 Dockerfile
构建镜像
docker build -t myapp .
🔹 说明:
-t myapp
:给镜像命名myapp
.
:Dockerfile 所在目录
2️⃣ 使用指定 Dockerfile
docker build -f Dockerfile.prod -t myapp:prod .
🔹 说明:
-f Dockerfile.prod
:使用Dockerfile.prod
-t myapp:prod
:命名myapp:prod
3️⃣ 传递构建参数
docker build --build-arg ENV=prod -t myapp .
🔹 说明:
--build-arg ENV=prod
:传递ENV=prod
作为环境变量
4️⃣ 禁用缓存
docker build --no-cache -t myapp .
🔹 说明:
--no-cache
:每次构建都重新下载和编译
📌 总结
🔥 docker run
vs docker build
命令 | 作用 | 示例 |
---|---|---|
docker run | 运行容器 | docker run -it ubuntu bash |
docker build | 构建镜像 | docker build -t myapp . |
-d | 后台运行 | docker run -d nginx |
-p | 端口映射 | docker run -p 8080:80 nginx |
-v | 挂载目录 | docker run -v /data:/app ubuntu |
--name | 指定容器名称 | docker run --name myapp ubuntu |
--build-arg | 传递构建参数 | docker build --build-arg ENV=prod . |
-f | 指定 Dockerfile | docker build -f Dockerfile.prod . |
--no-cache | 禁用缓存 | docker build --no-cache -t myapp . |