#Docker基础命令

1|0一.帮助命令

docker version : #查看Docker版本信息 docker info : #查看Docker信息 docker --help : # 查看帮助信息

2|0二.登入命令

#命令格式: docker login [参数] [镜像仓库URL] 792e65bc759cf149299d8e326e23834 参数 --username=xxx : 指定阿里云用户名(我用的是阿里云) passwd : 创建仓库时是使用的密码 url : 表示仓库链接 de65bc759cf149299d8e326e23821de00f

3|0三.获取镜像

格式 : docker pull [镜像仓库URL]/[命名空间名称]/[仓库名称]:[镜像版本号] 例 : docker pull docker.io/library/busybox:latest URL docker.io 命名空间 library 仓库名称 busybox 版本号 latest 简化 : docker pull busybox:latest (.....) 09f4ce0690e70577af308e9c188718c

4|0四.查看镜像信息

docker images [参数] / docker images ls [参数] 列出本地主机上的镜像 1643a3abec03ff935e720abdbc3b903 选项说明 REPOSITORY 仓库名称 TAG 版本号(latest:表示最新版本) IMAGE ID 镜像ID CREATED 镜像创建时间到现在 SIZE 镜像文件的体积 #同一仓库源可以有多个"TAG",代表这个仓库源的不同个版本,我们使用" REPOSITORY:TAG" 来定义不同的镜像 #如果你不指定一个镜像的版本标签,例如你只使用"ubuntu","docker"将默认使用"ubuntu:latest"镜像 参数说明 参数: -a : 显示所有镜像, 包括临时镜像 -q : 只显示镜像 ID 1f75a56e048d41ea1041f06a19d73dc --digests : 显示镜像再要信息 --no-trunc : 显示完整的镜像信息

5|0五.为镜像打 TAG

格式 : docker tag [原镜像仓库url]/[原镜像命名空间]/[原镜像仓库名称]:[版本号] [新镜像仓库url]/[新镜像命名空间]/[新镜像仓库名称]:[版本号] 示例 : docker tag busybox:latest registry.cn-shanghai.aliyuncs.com/python16-shawn/busybox:v1

7a737c5c78d0158137c53537350349a

6|0六推送镜像

格式 : docker push [镜像仓库URL]/[命名空间名称]/[仓库名称]:[版本号] 示例 : docker push registry.cn-shanghai.aliyuncs.com/python16-shawn/busybox:v1 d8af1f57ccd7661a4f07b59fb243e84 再看看我的阿里云镜像仓库 ab9862e7b56122607ffa8430f39736b 六.获取镜像详细信息 格式 : docker inspect [镜像ID] / [镜像名称:版本号] 示例 : docker inspect busybox:latest -f : 用"golang"语言模板语法获取镜像相关信息 c4727a121bb8705400351583fb9a7b1

7|0七.查阅历史镜像

格式 : docker history [镜像名字:镜像版本号] / [镜像ID] 示例 : docker history dc3bacd8b5ea 9bac35c330d5d9d9024a200214d1159

8|0八.搜索镜像

格式 : docker search [所搜索的镜像名称] [参数] 示例 : docker search python 499bfebd2195ecf8b6e1238f11aca14 列表参数 NAME 仓库名称 DESCRIPTION 描述 STARS 收藏个数 OFFICIAL 是否是官方镜像 AUTOMATED 是否是自构建的镜像 命令行参数 -f : 过滤 示例: docker search python -f stars=300 (收藏300的) 3bb36539449c4a10e3dbebc98a12f33 -s :列出搜藏不小于指定值的镜像 : 示例 : docker search python -s 300 73ee1ba575bc6d14580518602f815f7 --automated : 只列出 automated build 类型的镜像 4c600b6fbeadc8f18b22eba3b03fcf3 --limit : 显示查询条数

9|0九.删除和清理镜像

格式 : docker rmi [镜像名称:版本号] / [镜像ID] -f : 强制删除 1.删除单个示例 docker rmi -f bf756fb1ae65 699cb59d21407dceba953e5d188c2e5 2.删除多个 docker rmi -f [镜像名1:TAG] [镜像名2:TAG]... 3.删除全部 docker rmi -f $(docker images -qa) 17f5f95ffa348426fd4c2fb24c274a0 4.清理镜像 格式 : docker image prune [参数] 参数 : -a (all) 清理所有没有被使用的镜像 -f : 强制 十.保存镜像 格式 : docker commit [参数] [容器ID] / [容器名称:版本号] 参数: -a 指定作者 -m 简介 -p 保存镜像时,镜像暂停运行

10|0十.运行单个容器

前提 : 有镜像才能创建容器, 可以先下载一个: docker pull nginx 格式 : docker run [参数] [镜像名称/镜像ID] [执行的命令(默认执行指定的命令)] 参数: -d 以守护进程的方式运行 -p 指定端口映射(格式:宿主主机端口:容器向外暴露的端口) -P 随机端口映射 --name 指定容器的名称(同一台宿主主机上的docker名称不能重复) --rm 当一个容器结束了它的生命周期,就立即删除 -v 映射存储卷(可以映射文件及文件夹) -i 打开标准输出(通常与 t 连用) -t 创建一个伪终端 -e 在容器内设置一个环境变量 示例 "-d","-p" docker run -d -p 8899:80 nginx:1.19.2 "-P" docker run -d -P nginx:1.19.2 "--name" docker run -d --name nginx_name -P nginx:1.19.2 "--rm" docker run -d --rm --name nginx_rm nginx:1.19.2 "-v" docker run -d -v /root/test:/usr/share/nginx/html nginx:1.19.2 "-e" docker run -d -e NGINX_NAME=nginx nginx:1.19.2 本地查看 52f2cc79571af1d9df47d937d4bb586 浏览器查看 4d878b34aa1bad0b7f03752484cbf53 ps : docker 当中至少有一个应用程序运行在前台

11|0十一.容器基础相关命令

1.列出当前所有正在运行的容器 docker ps 参数: -a 列出当前所有正在运行的容器+历史上运行过的 -l 显示最近创建的容器 -n 显示最近n个创建的容器 -q 静默模式,只显示容器ID 2.退出容器 exit : 容器停止退出 Ctrl+P+Q : 容器不停止退出 3.启动容器 docker start [容器ID / 容器名] 4.重启容器 docker restart [容器ID / 容器名] 5.停止容器 docker stop [容器ID / 容器名] docker stop -f $(docker ps -qa) (所有) 6.强制停止容器 docker kill [容器ID / 容器名] 7.刪除已停止的容器 docker rm [容器ID] docker rm -f $(docker ps -qa)

12|0十二.导入、导出成镜像文件

1.针对容器进行导出导入 export : 将容器保存为镜像 import : 将 export 导出的包导入为镜像-(可自定义镜像名字) 格式 : docker export [容器名或ID] > [压缩包名称] image-20201201205850158 格式 : docker import [压缩包名称] [自定义镜像名称]:[版本号] image-20201201210245092 ps : 通过docker run -d -P nginx_song:v22 nginx -g 'daemon off;'运行导入的 (由容器导出的镜像) 2.针对镜像进行导出导入 save : 保存镜像, (当使用镜像ID保存镜像,导入时没有镜像名称) load : 导入镜像,不能自定义名称, save保存的更完整 格式 : docker save [镜像名或ID] > [压缩包名称] 注意 : 如果使用 ID 导出,导入时没有镜像名和标签,只有 <none> image-20201201211035163 打包多个格式 : docker save -o [压缩包名称] [镜像名称或ID ...] image-20201201211319690 格式 : docker load < [压缩包名称] image-20201201211836092 image-20201201212320583

13|0十三.进入容器(常用)

1.attach 格式 : docker attach [容器名或ID] 通过管道, 连接容器内PID=1 的进程 至少有一个进程运行在前台 会随着退出而停止容器的运行, 并且无法交互输入 image-20201201214705914 2.exec(官方推荐使用) 格式 : docker exec [参数] [容器名或ID] [命令] 进入示例 : docker exec -it 327ebc44385f sh 相当于在容器里面执行了一个命令 image-20201201215238915 3.nsenter 创建一个管道,链接容器上 配合 docker inspect 来使用 格式示例 : nsenter --target $( docker inspect -f {{.State.Pid}} nginxv1 ) --mount --uts --ipc --net --pid 4.ssh 在容器里面安装一个 sshd 服务 十四.复制 1.从容器内复制文件到宿主机 格式 : docker cp [容器ID:容器内文件路径] 宿主主机路径 image-20201201215912355 2.从宿主机复制文件到容器 格式 : docker cp 宿主主机路径 [容器ID:容器内文件路径] image-20201201220308373

14|0十四.查看容器日志

格式 : docker logs [容器名称 / ID] 示例 : dicker logs e5dcae424f57 更多命令参考

__EOF__

本文作者ଲ小何才露煎煎饺
本文链接https://www.cnblogs.com/zeny/p/15121584.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   ଲ小何才露煎煎饺  阅读(42)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
点击右上角即可分享
微信分享提示