注:本文是本人根据B站【狂神说Java】Docker视频所写,仅供学习参考。
发布自己的镜像
提交到DockerHub上
1、地址 https://hub.docker.com/ 注册自己的账号!
2、确定这个账号可以登录!
3、在我们服务器上提交自己的镜像!
# 查看 docker login 指令
[root@localhost home]# 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
# 登录
[root@localhost home]# docker login -u 你的登录名
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
# 登录成功
4、登录完毕后就可以提交镜像了,就是一步 docker push
# push 自己的镜像到服务器上
[root@localhost home]# docker push diytomcat
The push refers to repository [docker.io/library/diytomcat]
f7ce4b1a8a61: Preparing
5c6781303655: Preparing
996457de2184: Preparing
bc85d4f50c99: Preparing
291f6e44771a: Preparing
denied: requested access to the resource is denied # 被拒绝
# 需要带有自己的信息和镜像版本号
# 解决
# 1、docker tag firstimage YOUR_DOCKERHUB_NAME/镜像名称:版本号
# 2、docker push YOUR_DOCKERHUB_NAME/镜像名称:版本号
[root@localhost home]# docker tag d1f139154142 YOUR_DOCKERHUB_NAME/diytomcat:1.0
# 查看镜像 发现又出现一个1.0版本的带有自己信息的镜像
[root@localhost test]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
这个里是你的DockerHubName/diytomcat 1.0 d1f139154142 About an hour ago 612MB
diytomcat latest d1f139154142 About an hour ago 612MB
entrypoint-test latest 9d252b7bc745 18 hours ago 215MB
cmdtest latest 7eb07d3647de 19 hours ago 215MB
# docker push 上去即可! 自己发布的镜像尽量带上版本号!
[root@localhost test]# docker push YOUR_DOCKERHUB_NAME/diytomcat:1.0
提交的时候也是按照镜像的层级来提交的!
提交到阿里云上
1、登录阿里云
2、找到容器镜像服务
3、创建命名空间(一个账号只能创建三个命名空间)
4、创建容器镜像
浏览阿里云
# 退出dockerhub
[root@localhost test]# docker logout
Removing login credentials for https://index.docker.io/v1/
# 登录阿里云
[root@localhost test]# docker login --username=愚者派大星 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
# 根据阿里云提供命令 docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/命名空间名称/镜像仓库名称:[镜像版本号]
[root@localhost ~]# docker tag d1f139154142 registry.cn-hangzhou.aliyuncs.com/bohaosong/diytomcat:1.0
# 提交阿里云
[root@localhost test]# docker push registry.cn-hangzhou.aliyuncs.com/bohaosong/diytomcat:1.0
阿里云容器镜像具体参考官方文档!