一、获取镜像
docker search NAME 搜索引擎查找镜像
docker pull NAME:<TAG> 拉去镜像
NAME:表示镜像名称/镜像仓库的名称 TAG: 表示镜像的标签,通常表示镜像版本信息,如果不指定,则默认下载 latest 版本的镜像。
二、查看镜像信息
[root@docker-01 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
busybox latest 3a093384ac30 2 weeks ago 1.2MB
hub-gy.com/ubuntu latest 1d9c17228a9e 3 weeks ago 86.7MB
REPOSITORY: 来自于哪个仓库,没有前缀表示从
hub.docker.com官方下载的镜像
TAG: 镜像的标签信息,只是一个标记
IMAGE ID: 表示镜像的唯一标识
CREATED: 标识创建时间,也说明是镜像的最后更新时间
SIZE: 镜像的大小
三、 镜像加速
mkdir -p /etc/docker
# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://11bap61k.mirror.aliyuncs.com"]
}
systemctl daemon-reload
systemctl restart docker
四、 镜像代理
# cat /etc/systemd/system/docker.service.d/http-proxy.conf
[Service] Environment="HTTP_PROXY=http://127.0.0.1:8118" "NO_PROXY=localhost,127.0.0.1"
# cat /etc/systemd/system/docker.service.d/https-proxy.conf
[Service] Environment="HTTPS_PROXY=http://127.0.0.1:8118" "NO_PROXY=localhost,127.0.0.1"
# systemctl daemon-reload
# systemctl restart docker
# systemctl show --property=Environment docker
五、 导出和导入镜像
导出镜像到本地文件:
# docker save -o ubuntu.tar ubuntu
导入本地镜像:
# docker load < ubuntu.tar
# docker load --input ubuntu.tar
六、 上传镜像
首先在docker hub(https://hub.docker.com)上创建一个自己的ID,然后通过命令行本地 登陆,比如:
# docker login
给已经存在的镜像打改成自己的仓库名称,比如:
# docker tag fce289e99eb9 bmwx4/gytest:latest
docker push # docker push bmwx4/gytest:latest
七、 镜像层
当容器启动时,一个新的可写层被加 载到镜像的顶部。 这一层通常被称作“容器层”,“容 器层”之下的都叫“镜像层”。所有 镜像层都是只读的,不会被容器修改, 所以镜像可以被多个容器共享。
所有对容器的改动 - 无论添加、删 除、还是修改文件都只会发生在容器 层中。
7.1 、Docker 镜像分层结构的好处
有多个镜像都从相同的 base 镜像构建而来,那么 Docker Host 只需在磁盘上保存 一份 base 镜像;同时内存中也只需加载一份 base 镜像,就可以为所有容器服务 了。
一句话概括 - 共享资源