Docker基本管理(1): 镜像

本文参考《从Docker到Kubernetes入门与实战》(罗利民)

1. 查看版本/获取帮助  

1.1 查看版本

docker version

        运行结果如下:

Client:
 Cloud integration: v1.0.23
 Version:           20.10.14
 API version:       1.41
 Go version:        go1.16.15
 Git commit:        a224086
 Built:             Thu Mar 24 01:53:11 2022
 OS/Arch:           windows/amd64
 Context:           default
 Experimental:      true

Server: Docker Desktop 4.7.0 (77141)
 Engine:
  Version:          20.10.14
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.15
  Git commit:       87a90dc
  Built:            Thu Mar 24 01:46:14 2022
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.5.11
  GitCommit:        3df54a852345ae127d1fa3092b95168e4a88e2f8
 runc:
  Version:          1.0.3
  GitCommit:        v1.0.3-0-gf46b6ba
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

1.2 获取帮助

docker help

2. 基本管理命令

2.1 搜索镜像文件

docker search imagename

        例如:Ubuntu

docker search ubuntu

        运行结果如下:

NAME                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
ubuntu                           Ubuntu is a Debian-based Linux operating sys…   14048     [OK]
websphere-liberty                WebSphere Liberty multi-architecture images …   283       [OK]
ubuntu-upstart                   DEPRECATED, as is Upstart (find other proces…   112       [OK]
neurodebian                      NeuroDebian provides neuroscience research s…   88        [OK]
open-liberty                     Open Liberty multi-architecture images based…   51        [OK]
ubuntu-debootstrap               DEPRECATED; use "ubuntu" instead                46        [OK]
ubuntu/nginx                     Nginx, a high-performance reverse proxy & we…   40
ubuntu/mysql                     MySQL open source fast, stable, multi-thread…   29
ubuntu/apache2                   Apache, a secure & extensible open-source HT…   26
ubuntu/prometheus                Prometheus is a systems and service monitori…   23
kasmweb/ubuntu-bionic-desktop    Ubuntu productivity desktop for Kasm Workspa…   22
ubuntu/squid                     Squid is a caching proxy for the Web. Long-t…   18
ubuntu/postgres                  PostgreSQL is an open source object-relation…   15
ubuntu/bind9                     BIND 9 is a very flexible, full-featured DNS…   13
ubuntu/redis                     Redis, an open source key-value store. Long-…   9
ubuntu/grafana                   Grafana, a feature rich metrics dashboard & …   5
ubuntu/prometheus-alertmanager   Alertmanager handles client alerts from Prom…   5
ubuntu/memcached                 Memcached, in-memory keyvalue store for smal…   4
ubuntu/telegraf                  Telegraf collects, processes, aggregates & w…   3
circleci/ubuntu-server           This image is for internal use                  3
ubuntu/cortex                    Cortex provides storage for Prometheus. Long…   2
ubuntu/cassandra                 Cassandra, an open source NoSQL distributed …   1
bitnami/ubuntu-base-buildpack    Ubuntu base compilation image                   0                    [OK]
snyk/ubuntu                      A base ubuntu image for all broker clients t…   0
rancher/ubuntuconsole           

2.2 镜像下载到本地

docker pull ubuntu      ##官方镜像库

docker pull 网址/镜像    ##非官方镜像库
运行结果:

Using default tag: latest
latest: Pulling from library/ubuntu
e0b25ef51634: Pull complete
Digest: sha256:9101220a875cee98b016668342c489ff0674f247f6ca20dfc91b91c0f28581ae
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

2.3 查看镜像

docker images
运行结果:

REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
ubuntu       latest    825d55fb6340   6 days ago   72.8MB

2.4 删除镜像

docker rmi ubuntu
运行结果:

Untagged: ubuntu:latest
Untagged: ubuntu@sha256:9101220a875cee98b016668342c489ff0674f247f6ca20dfc91b91c0f28581ae
Deleted: sha256:825d55fb6340083b06e69e02e823a02918f3ffb575ed2a87026d4645a7fd9e1b
Deleted: sha256:c5ec52c98b3193052e15d783aca2bef10d8d829fa0d58fedfede511920b8f997

2.5 查看镜像

docker inspect ubuntu

2.6 构建镜像

docker run -i -t ubuntu /bin/bash

运行成功显示如下:
root@4f7acb30c5dd:/#

        输入命令:

apt-get -y update


Get:1 http://archive.ubuntu.com/ubuntu focal InRelease [265 kB]
Get:2 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB]
...

        在容器中安装apache,以使用这个容器作为web服务。构建容器并将其保存,这样就不需要每次创建新的容器再添加apache:

apt-get install -y apache2

        完成之后,构建镜像

        先用命令找到刚才使用的容器:

docker ps -a

CONTAINER ID   IMAGE     COMMAND       CREATED          STATUS                      PORTS     NAMES
4f7acb30c5dd   ubuntu    "/bin/bash"   57 minutes ago   Exited (0) 23 seconds ago             compassionate_kare

        其中第一列为容器ID,使用该ID创建新镜像:

docker commit 4f7acb30c5dd demo/webserver

sha256:caa76b3ef1cebe4b16f106edc7d15eff26ac78b71efacb3a4e6bd4552f29c130

        查看镜像:

docker images

REPOSITORY       TAG       IMAGE ID       CREATED          SIZE
demo/webserver   latest    caa76b3ef1ce   42 seconds ago   221MB
ubuntu           latest    825d55fb6340   6 days ago       72.8MB

2.7 标签管理

docker tag ubuntu tst/ubuntu

REPOSITORY       TAG       IMAGE ID       CREATED         SIZE
demo/webserver   latest    caa76b3ef1ce   9 minutes ago   221MB
ubuntu           latest    825d55fb6340   6 days ago      72.8MB
tst/ubuntu       latest    825d55fb6340   6 days ago      72.8MB

        以上操作共用一个存储空间,只是名称不同,同时也可以修改镜像标签:

docker tag demo/webserver demo/webserver:v2.0

        查看镜像:

docker images

REPOSITORY       TAG       IMAGE ID       CREATED          SIZE
demo/webserver   latest    caa76b3ef1ce   11 minutes ago   221MB
demo/webserver   v2.0      caa76b3ef1ce   11 minutes ago   221MB
ubuntu           latest    825d55fb6340   6 days ago       72.8MB
httpd            latest    118b6abfbf55   2 weeks ago      144MB

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值