当前位置:  首页>> 技术小册>> Docker容器实战部署

一、docker镜像管理

  1. docker镜像仓库模糊搜索镜像
  2. 用法:
  3. docker search 镜像关键字
  4. [root@zutuanxue ~]# docker search centos
  5. NAME DESCRIPTION STARS OFFICIAL AUTOMATED
  6. centos The official build of CentOS. 5674 [OK]
  7. #字段说明:
  8. NAME:镜像名称
  9. DESCRIPTION:镜像描述
  10. STARS:镜像星级,数字越大表示用的人越多
  11. OFFICIAL:是否为官方 跟[OK]说明是官方
  12. AUTOMATED: 是否为自动化构建的镜像

1.2、镜像下载-pull命令

从docker指定的仓库下载镜像到本地
用法:
docker pull 镜像名称

  1. [root@zutuanxue ~]# docker pull centos
  2. Using default tag: latest
  3. latest: Pulling from library/centos
  4. 729ec3a6ada3: Pull complete
  5. Digest: sha256:f94c1d992c193b3dc09e297ffd54d8a4f1dc946c37cbeceb26d35ce1647f88d9
  6. Status: Downloaded newer image for centos:latest
  7. docker.io/library/centos:latest

1.3、本地镜像查看-images命令

查看本地存储的镜像

  1. [root@zutuanxue ~]# docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. docker.io/gitlab/gitlab-ce latest 515ad1a75677 7 weeks ago 1.9 GB
  4. docker.io/redis latest 1319b1eaa0b7 7 weeks ago 104 MB
  5. #字段说明:
  6. REPOSITORY:镜像的名字
  7. TAG:镜像的标签
  8. IMAGE ID:镜像的ID
  9. CREATED:镜像建立时间
  10. SIZE: 镜像大小

1.4、镜像详细信息-inspect命令

显示镜像的详细导入由save保存出来的压缩文件镜像

用法:
docker load -i 镜像压缩文件名称 [镜像名称或者ID]

  1. [root@zutuanxue ~]# docker load -i centos_base.tar
  2. Loaded image: centos:latest信息
  3. 用法:
  4. docker inspect [镜像名称或者ID]
  5. [root@zutuanxue ~]# docker inspect 0f3e07c0138f
  6. [
  7. {
  8. "Id": "sha256:0f3e07c0138fbe05abcb7a9cc7d63d9bd4c980c3f61fea5efa32e7c4217ef4da",
  9. "RepoTags": [
  10. "centos:latest"
  11. ],
  12. "RepoDigests": [
  13. "centos@sha256:f94c1d992c193b3dc09e297ffd54d8a4f1dc946c37cbeceb26d35ce1647f88d9"
  14. ],
  15. "Parent": "",
  16. "Comment": "",
  17. "Created": "2019-10-01T23:19:57.105928163Z",
  18. "Container": "711572e3c0c1ac06d5c13c4e668ec170b8ad8786b5f0949f884a5f7fd350d856",
  19. "ContainerConfig": {
  20. "Hostname": "711572e3c0c1",
  21. "Domainname": "",
  22. "User": "",
  23. "AttachStdin": false,
  24. "AttachStdout": false,
  25. "AttachStderr": false,
  26. "Tty": false,
  27. "OpenStdin": false,
  28. "StdinOnce": false,
  29. "Env": [
  30. "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  31. ],
  32. "Cmd": [
  33. "/bin/sh",
  34. "-c",
  35. "#(nop) ",
  36. "CMD [\"/bin/bash\"]"
  37. ],
  38. "ArgsEscaped": true,
  39. "Image": "sha256:c0bda62fdbad65a3c6a1843d293a3a47d8233115cc6d384e3cb07c53580a2b43",
  40. "Volumes": null,
  41. "WorkingDir": "",
  42. "Entrypoint": null,
  43. "OnBuild": null,
  44. "Labels": {
  45. "org.label-schema.build-date": "20190927",
  46. "org.label-schema.license": "GPLv2",
  47. "org.label-schema.name": "CentOS Base Image",
  48. "org.label-schema.schema-version": "1.0",
  49. "org.label-schema.vendor": "CentOS"
  50. }
  51. },
  52. "DockerVersion": "18.06.1-ce",
  53. "Author": "",
  54. "Config": {
  55. "Hostname": "",
  56. "Domainname": "",
  57. "User": "",
  58. "AttachStdin": false,
  59. "AttachStdout": false,
  60. "AttachStderr": false,
  61. "Tty": false,
  62. "OpenStdin": false,
  63. "StdinOnce": false,
  64. "Env": [
  65. "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
  66. ],
  67. "Cmd": [
  68. "/bin/bash"
  69. ],
  70. "ArgsEscaped": true,
  71. "Image": "sha256:c0bda62fdbad65a3c6a1843d293a3a47d8233115cc6d384e3cb07c53580a2b43",
  72. "Volumes": null,
  73. "WorkingDir": "",
  74. "Entrypoint": null,
  75. "OnBuild": null,
  76. "Labels": {
  77. "org.label-schema.build-date": "20190927",
  78. "org.label-schema.license": "GPLv2",
  79. "org.label-schema.name": "CentOS Base Image",
  80. "org.label-schema.schema-version": "1.0",
  81. "org.label-schema.vendor": "CentOS"
  82. }
  83. },
  84. "Architecture": "amd64",
  85. "Os": "linux",
  86. "Size": 219583055,
  87. "VirtualSize": 219583055,
  88. "GraphDriver": {
  89. "Data": {
  90. "MergedDir": "/var/lib/docker/overlay2/e84fb0b30e3f1cd4a40d2ee6ed522736aedad13fcfce3571075ebbbd665aab4a/merged",
  91. "UpperDir": "/var/lib/docker/overlay2/e84fb0b30e3f1cd4a40d2ee6ed522736aedad13fcfce3571075ebbbd665aab4a/diff",
  92. "WorkDir": "/var/lib/docker/overlay2/e84fb0b30e3f1cd4a40d2ee6ed522736aedad13fcfce3571075ebbbd665aab4a/work"
  93. },
  94. "Name": "overlay2"
  95. },
  96. "RootFS": {
  97. "Type": "layers",
  98. "Layers": [
  99. "sha256:9e607bb861a7d58bece26dd2c02874beedd6a097c1b6eca5255d5eb0d2236983"
  100. ]
  101. },
  102. "Metadata": {
  103. "LastTagTime": "0001-01-01T00:00:00Z"
  104. }
  105. }
  106. ]

1.5、本地镜像删除-rmi命令

删除本地镜像库中的某个镜像

用法:
docker rmi [镜像名称或者ID]

  1. [root@zutuanxue ~]# docker rmi centos
  2. Untagged: centos:latest
  3. Untagged: centos@sha256:f94c1d992c193b3dc09e297ffd54d8a4f1dc946c37cbeceb26d35ce1647f88d9
  4. Deleted: sha256:0f3e07c0138fbe05abcb7a9cc7d63d9bd4c980c3f61fea5efa32e7c4217ef4da
  5. Deleted: sha256:9e607bb861a7d58bece26dd2c02874beedd6a097c1b6eca5255d5eb0d2236983

1.6、镜像保存-save命令

保存镜像为压缩文件

用法:
docker save -o 压缩文件名称 [镜像名称或者ID]

  1. [root@zutuanxue ~]# docker save -o centos_base.tar centos
  2. [root@zutuanxue ~]# ls
  3. anaconda-ks.cfg centos_base.tar

1.7、镜像载入-load命令

导入由save保存出来的压缩文件镜像

用法:
docker load -i 镜像压缩文件名称 [镜像名称或者ID]

  1. [root@zutuanxue ~]# docker load -i centos_base.tar
  2. Loaded image: centos:latest

1.8、镜像管理命令-image命令

镜像管理命令,和上面的命令相似

  1. [root@zutuanxue ~]# docker image --help
  2. Usage: docker image COMMAND
  3. Manage images
  4. Commands:
  5. build Build an image from a Dockerfile
  6. history Show the history of an image
  7. import Import the contents from a tarball to create a filesystem image
  8. inspect Display detailed information on one or more images
  9. load Load an image from a tar archive or STDIN
  10. ls List images
  11. prune Remove unused images
  12. pull Pull an image or a repository from a registry
  13. push Push an image or a repository to a registry
  14. rm Remove one or more images
  15. save Save one or more images to a tar archive (streamed to STDOUT by default)
  16. tag Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE

该分类下的相关小册推荐: