你可以在构建自定义映像时设置映像名称,如下所示:
docker build -t dude/man:v2 . # Will be named dude/man:v2
是否有一种方法可以在Dockerfile中定义图像的名称,这样我就不必在docker构建命令中提到它了?
你可以在构建自定义映像时设置映像名称,如下所示:
docker build -t dude/man:v2 . # Will be named dude/man:v2
是否有一种方法可以在Dockerfile中定义图像的名称,这样我就不必在docker构建命令中提到它了?
当前回答
如果你想在构建后给docker映像命名 只需要重新构建一次,但这次要命名 效果很好
docker build -t name_of_image .
其他回答
使用特定的Dockerfile,您可以尝试: docker build——tag < docker镜像名称>——file <特定Dockerfile> . docker build——tag < docker镜像名称>。 例如 Dockerfile_Second Dockerfile_Second Dockerfile_Second Dockerfile_Second
如果你想在构建后给docker映像命名 只需要重新构建一次,但这次要命名 效果很好
docker build -t name_of_image .
我的Dockerfile单独的解决方案是添加一个shebang行:
#!/usr/bin/env -S docker build . --tag=dude/man:v2 --network=host --file
FROM ubuntu:22.04
# ...
然后运行chmod +x Dockerfile和。/Dockerfile。 我甚至添加了更多的docker构建命令行参数,比如指定主机网络。
注意:带有-S/——split-string支持的env仅适用于较新的coreutils版本。
这里是另一个版本,如果你必须引用一个特定的docker文件:
version: "3"
services:
nginx:
container_name: nginx
build:
context: ../..
dockerfile: ./docker/nginx/Dockerfile
image: my_nginx:latest
然后你就跑
docker-compose build
如何在不使用yml文件的情况下建立一个自定义名称的图像:
docker build -t image_name .
如何使用自定义名称运行容器:
docker run -d --name container_name image_name