docker镜像管理-实操

一.docker镜像管理

1.拉取镜像

docker image pull <repository>:<tag>

镜像名称和标签使用 : 进行分隔,如果省略了标签,则默认为 latest

docker image pull nginx:latest 或者docker pull nginx:latest

拉取下来的镜像默认保存在:/var/lib/docker/<storage-driver>,具体信息可以使用 docker image inspect 进行查看。

2.查看本地有哪些镜像

docker image ls或者docker images

docker image ls --filter dangling=true 过滤显示所有的悬虚镜像

3.给镜像打标签

docker tag nginx:latest nginx:v1

4.清楚没有容器运行的镜像

docker image prune -a

5.搜索镜像

docker search nginx

docker search nginx --filter "is-official=true"

6.删除镜像

docker image rm

docker rmi

docker rmi $(docker image ls -f dangling=true -q)

7.查看镜像项目分层信息

docker image inspect nginx:latest

二.创建镜像

基于正在运行的容器创建镜像

1.运行一个镜像

docker run -itd --rm --name c1 nginx

2.进入容器,修改一下文件

docker exec -it c1 bash

3.基于运行容器提交一个镜像

docker commit -p -a "test" c1 nginx-commit:v1

4.基于新镜像创建一个容器

docker run -it --rm --name c2 nginx-commit:v1 ls

基于运行容器导出一个镜像

docker export 容器ID > update.tar或者docker export 容器ID -o update.tar

docker export 4fe > upload.tar.gz 或则docker export 4fe -o update.tar

基于导出的镜像导入到镜像

docker import - 镜像名称 < update.tar

docker import - test-nginx <upload.tar.gz

基于本地模板创建镜像,对于本地已有镜像,可以使用 Docker 的 save 和 load 命令来创建一个压缩包

docker save nginx:latest -o myalpine.tar

docker load -i myalpine.tar

基于 Dockerfile 创建,这个比较涉及的知识比较多,单独讲

三.上传镜像

打标签

docker tag SOURCE_IMAGE[:TAG] harbor-helmchart.baiwangjs.com:8443/docker-image-test/REPOSITORY[:TAG]

docker tag hello-world:latest harbor-helmchart.baiwangjs.com:8443/docker-image-test/hello-world:latest

2.登录镜像仓库

docker login -u admin -p Harbor12345 https://harbor-helmchart.baiwangjs.com:8443

3.上传镜像

docker push harbor-helmchart.baiwangjs.com:8443/docker-image-test/hello-world:latest

4.拉取镜像的命令

docker pull harbor-helmchart.baiwangjs.com:8443/docker-image-test/hello-world:latest

相关推荐
Anarkh_Lee5 小时前
Neo4j在win下安装教程(docker环境)
docker·容器·neo4j
正经教主6 小时前
【问题】解决docker的方式安装n8n,找不到docker.n8n.io/n8nio/n8n:latest镜像的问题
运维·docker·容器·n8n
joker_zsl8 小时前
docker的安装和简单使用(ubuntu环境)
运维·docker·容器
啥都想学的又啥都不会的研究生8 小时前
Kubernetes in action-初相识
java·docker·微服务·容器·kubernetes·etcd·kubelet
赵我说的做_life9 小时前
基于Docker的Flask项目部署完整指南
docker·容器·flask
江畔独步10 小时前
docker容器监控&自动恢复
docker·容器·eureka
诡异森林。16 小时前
Docker--Docker网络原理
网络·docker·容器
ALex_zry16 小时前
Docker Macvlan网络配置实战:解决“network already exists“错误
网络·docker·php
IT小辉同学16 小时前
Docker如何更换镜像源提高拉取速度
spring cloud·docker·eureka
GnixAij18 小时前
Docker SSH端口转发
docker·ssh