Docker | 发布镜像到镜像仓库

简介: Docker | 发布镜像到镜像仓库

发布镜像到DockerHub


hub.docker.com/ 注册账号


1、登录docker


  1. 命令行查看帮助


[root@--- ~]# docker login --help
Usage:  docker login [OPTIONS] [SERVER]
Log in to a Docker registry.
If no server is specified, the default is defined by the daemon.
Options:
  -p, --password string   Password
      --password-stdin    Take the password from stdin
  -u, --username string   Username
  1. 登录

docker login -u xiaobluewhale

[root@--- ~]# docker login -u xiaobluewhale
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@--- ~]# 


2、服务器上提交镜像


docker push [OPTIONS] NAME[:TAG]

docker push 命令推送镜像的规范是:注册用户名/镜像名。


使用以下方法之一命名您的本地镜像:


  1. 当你构建它们时,使用如下命令

docker build -t /[:]

  1. 重命名现有的本地镜像

docker tag  /[:]

  1. docker commit 提交更改

docker commit  /[:]

  1. 推送镜像仓库

docker push /:

  • docker push xiao/tomcat
docker push xiao/tomcat
Using default tag: latest
The push refers to repository [docker.io/xiao/tomcat]
69421fc728fb: Preparing 
1f6217f0c2bb: Preparing 
aa9c3f9fafec: Preparing 
7d4a4cd414a9: Preparing 
74ddd0ec08fa: Preparing 
denied: requested access to the resource is denied 


推送失败,被拒绝


推送失败的原因: name必须是注册用户名


解决push失败问题


增加一个tag, 重命名镜像

docker tag 24b3a476f143 xiaobluewhale/tomcat:1.0
The push refers to repository [docker.io/xiaobluewhale/tomcat]
# 查看镜像
docker images
REPOSITORY            TAG       IMAGE ID       CREATED        SIZE
xiaobluewhale/tomcat   1.0       24b3a476f143   13 hours ago   680MB
xiao/tomcat            1.0       24b3a476f143   13 hours ago   680MB
xiao/tomcat            latest    24b3a476f143   13 hours ago   680MB
# 推送镜像
docker push xiaobluewhale/tomcat:1.0


提交成功


image.png

提交的时候也是按照镜像的层级提交的

在个人DockerHub上查看推送成功的镜像

image.png


发布镜像到阿里云镜像仓库


1、登陆阿里云


2、找到容器镜像服务,创建实例


image.png

image.png

企业版需要付费购买(1个月741)

image.png

我选择创建个人实例

image.png


3、创建命名空间(为了隔离)


image.png


4、创建镜像仓库


本地

image.png


5、推送镜像


参考阿里云容器镜像指南


  1. 登录


docker login --username=[yourname] registry.cn-hangzhou.aliyuncs.com

  1. 查看镜像
docker images
REPOSITORY                      TAG       IMAGE ID       CREATED        SIZE
xiaobluewhale/tomcat            1.0       24b3a476f143   14 hours ago   680MB
  1. 推送镜像
docker push xiaobluewhale/tomcat:1.0
The push refers to repository [docker.io/xiaobluewhale/tomcat]

image.png


6、阿里云查看镜像


imageID: 24b3a476f143

image.png

也可以查看可视化的层信息

image.png

相关实践学习
通过ACR快速部署网站应用
本次实验任务是在云上基于ECS部署Docker环境,制作网站镜像并上传至ACR镜像仓库,通过容器镜像运行网站应用,网站运行在Docker容器中、网站业务数据存储在Mariadb数据库中、网站文件数据存储在服务器ECS云盘中,通过公网地址进行访问。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
6月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
476 100
|
6月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
442 99
|
6月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
595 98
|
6月前
|
安全 Go Docker
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
|
5月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
683 6
|
6月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
284 8
|
7月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
472 16
|
7月前
|
Ubuntu 网络安全 PHP
如何使用vscode的Docker插件管理ubuntu 拉取服务器的镜像以及创建容器
本测试镜像旨在记录使用vscode的Docker插件拉取病创建Dockerfile,以及拉取镜像。
|
10月前
|
关系型数据库 MySQL Docker