我在下面的一个docker标记的例子中看到了。
docker build -t example.com:80/hw-go:1.2 .
我不明白的是为什么这里使用“example.com:80”而不是“user-name”作为常规约定。
docker build -t <user-name>/<image-name>:<tag-name>
使用示例URL和端口而不是用户名的任何具体原因?此图像是本地构建的,也是本地保存的。
/home/ravi> sudo docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
example.com:80/ad 1.2 a285e31adfc6 30 minutes ago 736MB
registry.k8s.io/sig-storage/nfs-provisioner v4.0.8 fd0b16f70b66 12 days ago 236MB
nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-a1 3.0.1 49090bccc5e6 3 months ago 140MB
docker信息输出
/home/ravi/#docker info
Client:
Context: default
Debug Mode: false
Server:
Containers: 107
Running: 52
Paused: 0
Stopped: 55
Images: 47
Server Version: 20.10.21
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: systemd
Cgroup Version: 1
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
Default Runtime: runc
Init Binary: docker-init
containerd version:
runc version:
init version:
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 5.15.0-67-generic
Operating System: Ubuntu 20.04.5 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 15.63GiB
Name: ubuntu-temp
ID: GXHN:P4BG:HMYJ:4PTJ:LIMA:MOE2:ECRL:2ZCI:YRNI:B5YH:DN3U:JPK4
Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
谢谢
1条答案
按热度按时间eqqqjvef1#
标签的第一部分是注册表URL(镜像可以从哪个注册表推送或拉取)。通常它是缺失的,因为Docker暗示了docker hub。
在注册表名称(示例中的用户名)之前放置任何其他内容都会告诉Docker使用不同的注册表,而不是默认注册表。
因此,在您的示例中,应该有一个运行在
example.com:80
上的Docker注册表,您可以将此映像推送到其中。