今天意外开通了阿里云的容器镜像服务,于是就用来练练手。以下操作均在MacOS下进行,其中docker版本信息如下:
Docker版本
第一步登录
docker login --username=xxxx@aliyun.com registry.cn-hangzhou.aliyuncs.com
第二步创建新image
Dockerfile的内容如下
FROM busybox
CMD echo "Hello world! This is my first Docker image."
执行打包命令
docker build -t demo-repo .
Docker打包
第三步给这个image改个名字
docker tag 8ecc033bce33 registry.cn-hangzhou.aliyuncs.com/阿里容器命名空间名/demo-repo
第四步上传image
docker push registry.cn-hangzhou.aliyuncs.com/阿里容器命名空间名/demo-repo
第五步删除本地image,然后重新下载试试看
docker rmi registry.cn-hangzhou.aliyuncs.com/阿里容器命名空间名/demo-repo
docker pull registry.cn-hangzhou.aliyuncs.com/阿里容器命名空间名/demo-repo
docker run registry.cn-hangzhou.aliyuncs.com/阿里容器命名空间名/demo-repo
Docker执行镜像
最后补充两句,可以看见image的名字是由三部分组成的,第一部分是仓库名,第二部分是命名空间名,第三部分才是自己定义的image名,这三部分共同组成了一个完整的image名称,就和URL一样。如果你试图忽略仓库名和命名空间名,那缺省就是docker.io的中央仓库,结果当然是没有权限push。
权限不足
网友评论