Docker本身就起到打包环境的核心作用,所以你要知道你打包完之后,你怎么给别人使用?就是把你的镜像发到一个远程的仓库里,给别人下载。但是一般情况下,远程仓库都是阿里云,因为除了大厂有docker仓库运维工程师,其他的公司都没有这个人力,所以他们都会发在阿里云上,这也是导致你搜索一个镜像的时候,可能会出现很多相似名镜像
推送前你先要确保你的镜像以及做好了,这里为了演示我就先做一个
[root@hdp3 wy]# docker commit -a wy -m "test push" 47eea52c6b3f testpush:1.1
sha256:ec11fb6e6364187d622866376d5c2306c4727bdc46b9407a0fae4809e5e7e483
随后在阿里云上创建仓库,第一次用阿里云docker仓库的需要创建个人版的镜像托管服务。https://cr.console.aliyun.com/cn-hangzhou/instances
,只有阿里云的账号我就不多少了,你既然在国内能使用docker,那你就应该有对应的镜像加速器,也就有阿里云开发者账号。
当你有了镜像托管服务以后,在里面创建仓库
代码源选择本地仓库
然后点击创建
随后在操作指南里面就告诉你怎么做了,国产平台都有完整提示的
整个的操作没啥技术可研
[root@hdp3 wy] docker commit -a wy -m "test push" 47eea52c6b3f testpush:1.1
sha256:ec11fb6e6364187d622866376d5c2306c4727bdc46b9407a0fae4809e5e7e483
[root@hdp3 wy] docker login --username=aliyun8712470109 registry.cn-hangzhou.aliyuncs.com
Password: 这里输入你的认证密码
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
[root@hdp3 wy] docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
testpush 1.1 ec11fb6e6364 35 minutes ago 203MB
tomcat latest fb5657adc892 11 months ago 680MB
centos 7.8.2003 afb6fca791e0 2 years ago 203MB
[root@hdp3 wy] docker tag ec11fb6e6364 registry.cn-hangzhou.aliyuncs.com/wy156/testpush:1.1
[root@hdp3 wy] docker push registry.cn-hangzhou.aliyuncs.com/wy156/testpush:1.1
The push refers to repository [registry.cn-hangzhou.aliyuncs.com/wy156/testpush]
2196ba60ffc6: Pushed
fb82b029bea0: Pushed
1.1: digest: sha256:7acd1f5c65ef4718c5e1a4c92c22ad9761ea34370a9cabd42e0b3405c0a7b126 size: 736
随后你就能在阿里云上看到你的镜像了
同时你本地会多出一个远程镜像
[root@hdp3 wy]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
testpush 1.1 ec11fb6e6364 About an hour ago 203MB
registry.cn-hangzhou.aliyuncs.com/wy156/testpush 1.1 ec11fb6e6364 About an hour ago 203MB
tomcat latest fb5657adc892 11 months ago 680MB
centos 7.8.2003 afb6fca791e0 2 years ago 203MB