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

相关推荐
金刚猿5 小时前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong5 小时前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿6 小时前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
70asunflower9 小时前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
春日见10 小时前
车辆动力学:前后轮车轴
java·开发语言·驱动开发·docker·计算机外设
xuhe210 小时前
[全流程详细教程]Docker部署ClawBot, 使用GLM4.7, 接入TG Bot实现私人助理. 解决Docker Openclaw Permission Denied问题
linux·docker·ai·github·tldr
星火s漫天11 小时前
第一篇: 使用Docker部署flask项目(Flask + DB 容器化)
数据库·docker·flask
MonkeyKing_sunyuhua13 小时前
docker compose up -d --build 完全使用新代码打包的方法
docker·容器·eureka
醇氧13 小时前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器
技术路上的探险家14 小时前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker