[root@izuf63c0r3hzuj2ddt2gqvz ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
runnable_es latest 6d5c7011f371 2 months ago 536MB
mysql latest b8fd9553f1f0 4 months ago 445MB
mq-1 latest ee6f767c783f 7 months ago 250MB
tomcat latest 3639174793ba 7 months ago 463MB
rabbitmq latest 6d385fe2de66 7 months ago 164MB
nginx latest 53f3fd8007f7 8 months ago 109MB
redis latest a55fbf438dfd 9 months ago 95MB
elasticsearch latest 5acf0e8da90b 15 months ago 486MB
[root@izuf63c0r3hzuj2ddt2gqvz ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
00229456f72e mysql "docker-entrypoint.s" About an hour ago Up About an hour 0.0.0.0:3306->3306/tcp, 33060/tcp blog-mysql
[root@izuf63c0r3hzuj2ddt2gqvz ~]# docker commit -a 'dockhapi' -m 'init mysql' 00229456f72e dockhapi/mysql:v1.0
sha256:81c858adc2d826919dd3c9968a6749a83d3ba2cb8ac993ea706fa83a83a2c67d
[root@izuf63c0r3hzuj2ddt2gqvz ~]# docker tag dockhapi/mysql:v1.0 dockhapi/mysqls
[root@izuf63c0r3hzuj2ddt2gqvz ~]# docker push dockhapi/mysql:v1.0
The push refers to repository [docker.io/dockhapi/mysql]
a4065e17f028: Pushed
1cfb4d403fde: Pushed
e47b5971b1f1: Pushed
9ac6573d19b0: Pushed
3cd5c95dfa08: Pushed
05f26d9a462a: Pushed
9e88946b01ba: Pushed
7acae26d323c: Pushed
9a341d74c9b2: Pushed
5547ac6d39e8: Pushed
683d7a4130fe: Pushed
7288a4c980c6: Pushed
e9dc98463cd6: Pushed
v1.0: digest: sha256:7ab38983f58c3048978e8c3becf51c95ba9bedbe0ccc246e01b0a30051f9cea4 size: 3035
上述是我在运行中的mysql容器拍摄快照后推上dockerhub的过程。
步骤
登录(https://hub.docker.com)
docker login docker.io
然后提示输入username和密码
拍摄快照
docker commit -a 'dockerhub username' -m 'commit message' '运行中的docker的Container Id' '快照名称'
打标签
docker tag '快照名称[:version]' 'dockerhub username'/repository
提交镜像
docker push '快照名'
最后既可以在dockerhub上看到了:
右边提示:
docker pull dockhapi/mysql:v1.0
即可拉取镜像。不用怕机器关机后失去所创建的表和数据了!(私有库,未登录pull不下来哦!)
网友评论