今天意外開通了阿里云的容器鏡像服務,于是就用來練練手。以下操作均在MacOS下進行,其中docker版本信息如下:

Docker版本
第一步登錄
docker login --username=xxxx@aliyun.com registry.cn-hangzhou.aliyuncs.com
第二步創(chuàng)建新image
Dockerfile的內容如下
FROM busybox
CMD echo "Hello world! This is my first Docker image."
執(zhí)行打包命令
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執(zhí)行鏡像
最后補充兩句,可以看見image的名字是由三部分組成的,第一部分是倉庫名,第二部分是命名空間名,第三部分才是自己定義的image名,這三部分共同組成了一個完整的image名稱,就和URL一樣。如果你試圖忽略倉庫名和命名空間名,那缺省就是docker.io的中央倉庫,結果當然是沒有權限push。

權限不足