Docker常用命令详解_docker命令详解-程序员宅基地

技术标签: 运维开发  docker  

docker命令大全

在这里插入图片描述

命令 说明
docker attach 将本地标准输入、输出和错误流附加到正在运行的容器
docker build 从 Dockerfile 构建镜像
docker builder 管理构建
docker checkpoint 管理检查点
docker commit 从容器的更改中创建新图像
docker config 管理 Docker 配置
docker container 管理容器
docker context 管理上下文
docker cp 在容器和本地文件系统之间复制文件/文件夹
docker create 创建一个新容器
docker diff 检查容器文件系统上文件或目录的更改
docker events 从服务器获取实时事件
docker exec 在正在运行的容器中运行命令
docker export 将容器的文件系统导出为 tar 存档
docker history 显示image的历史
docker image 管理images
docker images image列表
docker import 从tar包中的内容创建一个新的文件系统再导入为镜像
docker info 显示整个系统的信息
docker inspect 返回Docker对象的低级信息
docker kill 杀死一个或多个正在运行的容器
docker load 从 tar 存档或 STDIN 加载图像
docker login 登录到Docker注册表
docker logout 从Docker注册表注销
docker logs 获取容器的日志
docker manifest 管理Docker镜像清单和清单列表
docker network 管理网络
docker node 管理群节点
docker pause 暂停一个或多个容器内的所有进程
docker plugin 管理插件
docker port 列出容器的端口映射或特定映射
docker ps 列出容器
docker pull 从注册表中提取图像或存储库
docker push 将图像或存储库推送到注册表
docker rename 重命名容器
docker restart 重新启动一个或多个容器
docker rm 移除一个或多个容器
docker rmi 删除一个或多个图像
docker run 在新容器中运行命令
docker save 将一个或多个图像保存到tar存档 (默认情况下流式传输到STDOUT)
docker search 在Docker Hub中搜索镜像
docker secret 管理Docker机密
docker service 管理服务
docker stack 管理Docker堆栈
docker start 启动一个或多个已停止的容器
docker stats 显示容器资源使用统计信息的实时流
docker stop 停止一个或多个正在运行的容器
docker swarm 管理群
docker system 管理Docker
docker tag 创建一个引用SOURCE_IMAGE的标签TARGET_IMAGE
docker top 显示容器的运行进程
docker trust 管理对Docker镜像的信任
docker unpause 取消暂停一个或多个容器内的所有进程
docker update 更新一个或多个容器的配置
docker version 显示Docker版本信息
docker volume 管理卷
docker wait 阻止直到一个或多个容器停止,然后打印它们的退出代码

帮助启动类

启动docker:systemctl start docker
停止docker:systemctl stop docker
重启docker:systemctl restart docker
查看docker状态:systemctl status docker
开机自启动:systemctl enable docker
查看docker概要信息:docker info
查看docker总体帮助文档:docker --help
查看docker命令帮助文档:docker 具体命令 --help

镜像命令

docker images-列出所有镜像

列出所有镜像


使用

docker images [选项]
在这里插入图片描述

显示的各个参数说明
REPOSITORY 表示镜像的仓库源
TAG 镜像的标签版本号
IMAGE ID 镜像ID
CREATED 镜像创建时间
SIZE 镜像大小

同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
如果你不指定一个镜像的版本标签,例如你只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像

选项
名称,简写 默认 描述
–all,-a 显示所有图像(默认隐藏中间图像)
–digests 显示摘要
–filter,-f 根据提供的条件过滤输出
–format 使用 Go 模板打印漂亮的图像
–no-trunc 不要截断输出
–quiet,-q 仅显示图像 ID

docker search-搜索镜像

在Docker Hub中搜索镜像


使用

docker search [选项] 镜像名称
在这里插入图片描述

选项
名称,简写 默认 描述
–filter , -f 根据提供的条件过滤输出
–format 使用Go模板的漂亮打印搜索
–limit 25 最大搜索结果数
–no-trunc 不要截断输出

docker pull-下载镜像

下载某个镜像


使用

docker pull 镜像名称[:TAG]

省略TAG默认为最新版

在这里插入图片描述

选项
名称,简写 默认 描述
–all-tags,-a 下载存储库中的所有标记图像
–disable-content-trust true 跳过图像验证
–platform 如果服务器支持多平台,则设置平台
–quiet,-q 抑制详细输出

docker system df-显示docker磁盘使用情况

查看镜像/容器/数据卷所占用的空间


使用

docker system df
在这里插入图片描述

docker rmi-删除镜像

删除一个或多个镜像


使用

docker rmi -f 镜像ID:删除一个
docker rmi -f 镜像名1:TAG 镜像名2:TAG :删除多个
docker rmi -f $(docker images -qa):删除全部

-f:表示强制删除

image.png

容器命令

docker run新建并启动容器

新建并启动容器


使用

docker run [选项] 镜像 [命令] [ARG...]

选项
名称,简写 描述 例子
–name 为容器指定名称 –name=myRedis
–detach,-d 在后台运行容器并打印容器ID
–publish,-p 指定端口映射 -p hostPort:containerPort(端口映射)
-p ip:hostPort:containerPort(配置监听地址)
–publish-all,-P 随机端口映射
–interactive,-i 以交互模式运行容器,通常与-t同时使用
–tty,-t 为容器超星分配一个伪输入终端,通常与-i同时使用
也即启动交互式容器(前台有伪终端,等待交互)
深度学习

image.png

docker rename-重命名容器

给容器重新命名


使用

docker rename 容器 新名称

docker ps-查看启动的容器

查看启动的容器


使用

docker ps [选项]

选项
名称,简写 默认 描述
–all,-a 显示所有容器(默认显示刚刚运行)
–filter,-f 根据提供的条件过滤输出
–format 使用 Go 模板打印漂亮的容器
–last,-n -1 显示 n 个最后创建的容器(包括所有状态)
–latest,-l 显示最新创建的容器(包括所有状态)
–no-trunc 不要截断输出
–quiet,-q 仅显示容器 ID
–size,-s 显示总文件大小

退出交互式

exit:退出后容器会停止
ctrl+p+q:退出后容器不会停止

docker start-启动容器

启动已经停止的一个或多个容器


使用

docker start [选项] 容器ID或名称 [容器ID或名称...]

docker restart-重启容器

重新启动一个或多个容器


使用

docker restart [选项] 容器ID或名称 [容器ID或名称...]

选项
名称,简写 默认 描述
–time , -t 10 在杀死容器之前等待停止的秒数

docker stop-停止容器

停止一个或多个正在运行的容器


使用

docker stop [选项] 容器ID或名称 [容器ID或名称...]

选项
名称,简写 默认 描述
–time , -t 10 在杀死容器之前等待停止的秒数

docker kill-强行停止容器

杀死一个或多个正在运行的容器


使用

docker kill [选项] 容器ID或名称 [容器ID或名称...]

选项
名称,简写 默认 描述
–signal,-s KILL 发送到容器的信号

有关标准 Linux 信号的列表,请参阅signal(7) 手册页。

docker rm-删除容器

删除一个或多个容器


使用

docker rm [选项] 容器ID或名称 [容器ID或名称...]
一次性删除所有:

  • docker rm -f $(docker ps -a -q)
  • docker ps -a -q | xargs docker rm
选项
名称,简写 默认 描述
–force , -f 强制删除正在运行的容器(使用 SIGKILL)
–link,-l 删除指定链接
–volumes,-v 删除与容器关联的匿名卷

docker logs-查看容器日志

获取容器的日志


使用

docker logs [选项] 容器
image.png

选项
名称,简写 默认 描述
–details 显示提供给日志的额外详细信息
–follow,-f 关注日志输出
–since 显示自时间戳(例如 2013-01-02T13:23:37Z)或相对时间(例如 42m 42 分钟)以来的日志
–tail,-n all 从日志末尾显示的行数
–timestamps,-t 显示时间戳
–until 在时间戳(例如 2013-01-02T13:23:37Z)或相对时间(例如 42m 42 分钟)之前显示日志

docker top-查看容器内运行的进程

显示容器的运行进程

使用

docker top 容器

docker inspect-查看容器内部细节

查看容器内部细节,返回有关 Docker 对象的低级信息


使用

docker inspect [选项] 容器

docker exec-在容器中运行命令

在正在运行的容器中运行命令


使用

docker exec [选项] 容器 命令 [ARG...]
docker exec -it 容器 命令

exec是在容器中打开新的终端,并且可以启动新的进程用exit退出,不会导致容器的停止。

选项
名称,简写 默认 描述
–detach , -d 分离模式:后台运行命令
–detach-keys 覆盖用于分离容器的键序列
–env,-e 设置环境变量
–env-file 读入环境变量文件
–interactive,-i 以交互模式运行容器,通常与-t同时使用
–privileged 赋予命令扩展权限
–tty,-t 为容器超星分配一个伪输入终端,通常与-i同时使用
也即启动交互式容器(前台有伪终端,等待交互)
–user,-u 用户名或 UID(格式:<name|uid>[:<group|gid>])
–workdir,-w 容器内的工作目录

docker attach-连接到正在运行中的容器

连接到正在运行中的容器


使用

docker attch 容器

attach 直接进入容器启动命令的终端,不会启动新的进程用exit退出,会导致容器的停止。

docker cp-复制文件

在容器和本地文件系统之间复制文件/文件夹


使用

容器内复制到本地:docker cp [选项] 容器:容器内路径 本地路径

  • 如:docker cp aad23e144eac:/var/logs/ /tmp/app_logs

本地复制到容器内:docker cp [选项] 本地路径 容器:容器内路径

  • 如:docker cp ./some_file aad23e144eac:/work

docker export-导出

将容器的文件系统导出为 tar 存档


使用

docker export [选项] 容器

  • 如:docker export aad23e144eac > abcd.tar

image.png

docker import-导入

从tar包中的内容创建一个新的文件系统再导入为镜像


使用

docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]

  • 如: docker import abcd.tar red:6

image.png

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/laogui666/article/details/127721374

智能推荐

使用UmcFramework和unimrcpclient.xml连接多个SIP设置的配置指南及C代码示例

在多媒体通信领域,MRCP(Media Resource Control Protocol)协议被广泛用于控制语音识别和合成等媒体资源。UniMRCP是一个开源的MRCP实现,提供了客户端和服务端的库。UmcFramework是一个基于UniMRCP客户端库的示例应用程序框架,它帮助开发者快速集成和测试MRCP客户端功能。本文将详细介绍如何使用UmcFramework和unimrcpclient.xml配置文件连接到多个SIP设置,以及如何用C代码进行示例说明。

java.net.ProtocolException: Server redirected too many times (20)-程序员宅基地

文章浏览阅读3k次。报错:java.net.ProtocolException: Server redirected too many times (20)1.没有检查到cookie,一直循环重定向。解决:CookieHandler.setDefault(new CookieManager(null, CookiePolicy.ACCEPT_ALL));URL url = new URL(url); ..._java.net.protocolexception: server redirected too many times (20)

springboot启动报错 Failed to scan *****/derbyLocale_ja_JP.jar from classloader hierarchy_failed to scan from classloader hierarchy-程序员宅基地

文章浏览阅读4.1k次。问题这是部分报错信息2019-07-11 14:03:34.283 WARN [restartedMain][DirectJDKLog.java:175] - Failed to scan [file:/D:/repo/org/apache/derby/derby/10.14.2.0/derbyLocale_ja_JP.jar] from classloader hierarchyjava...._failed to scan from classloader hierarchy

MATLAB-ones函数_matlab中ones函数-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏7次。在MATLAB中,ones函数用于创建一个指定大小的由1组成的矩阵或数组。_matlab中ones函数

解决PS等软件出现应用程序无法正常启动(0xc000007b)_photoshop应用程序无法正常启动0xc000007b。请单击“确认”关闭应用程序。-程序员宅基地

文章浏览阅读3.9w次,点赞2次,收藏9次。  在使用电脑办公过程中,安装应用程序时难免遇到无法安装或者无法正常启动的问题,这对我们使用电脑带来了诸多不便。那遇到应用程序无法正常启动的问题要如何解决呢?相信大家肯定都是十分疑问的,每次都是只能忍痛重新安装软件。今天,小编就和大家探讨下应用程序无法正常启动的解决方法,帮助大家排忧解难。0xc000007b电脑图解1  第一种方案:SFC检查系统完整性来尝试修复丢失文件  1、打开电脑搜索输入cmd.exe,选择以管理员身份运行,跳出提示框时选择继续。0xc000007b电脑图解2_photoshop应用程序无法正常启动0xc000007b。请单击“确认”关闭应用程序。

oracle介质恢复和实例恢复的异同-程序员宅基地

文章浏览阅读396次。1、概念 REDO LOG是Oracle为确保已经提交的事务不会丢失而建立的一个机制。实际上REDO LOG的存在是为两种场景准备的:实例恢复(INSTANCE RECOVERY);介质恢复(MEDIA RECOVERY)。 实例恢复的目的是在数据库发生故障时,确保BUFFER CACHE中的数据不会丢失,不会造成数据库的..._oracle 实例恢复和介质恢复

随便推点

轻松搭建CAS 5.x系列(5)-增加密码找回和密码修改功能-程序员宅基地

文章浏览阅读418次。概述说明CAS内置了密码找回和密码修改的功能; 密码找回功能是,系统会吧密码重置的连接通过邮件或短信方式发送给用户,用户点击链接后就可以重置密码,cas还支持预留密码重置的问题,只有回答对了,才可以重置密码;系统可配置密码重置后,是否自动登录; 密码修改功能是,用户登录后输入新密码即可完成密码修改。安装步骤`1. 首先,搭建好cas sso server您需要按..._修改cas默认用户密码

springcloud(七) feign + Hystrix 整合 、-程序员宅基地

文章浏览阅读141次。之前几章演示的熔断,降级 都是 RestTemplate + Ribbon 和RestTemplate + Hystrix ,但是在实际开发并不是这样,实际开发中都是 Feign 远程接口调用。Feign + Hystrix 演示:  eruka(略)order 服务工程:  pom.xml<?xml version="1.0" encoding="U..._this is order 服务工程

YOLOv7如何提高目标检测的速度和精度,基于优化算法提高目标检测速度-程序员宅基地

文章浏览阅读3.4k次,点赞35次,收藏43次。学习率是影响目标检测精度和速度的重要因素之一。合适的学习率调度策略可以加速模型的收敛和提高模型的精度。在YOLOv7算法中,可以使用基于余弦函数的学习率调度策略(Cosine Annealing Learning Rate Schedule)来调整学习率。

linux中进程退出函数:exit()和_exit()的区别_linux结束进程可以用哪些函数,它们之间有何区别?-程序员宅基地

文章浏览阅读4k次,点赞4次,收藏9次。 linux中进程退出函数:exit()和_exit()的区别(1)_exit()执行后立即返回给内核,而exit()要先执行一些清除操作,然后将控制权交给内核。(2)调用_exit函数时,其会关闭进程所有的文件描述符,清理内存以及其他一些内核清理函数,但不会刷新流(stdin, stdout, stderr ...). exit函数是在_exit..._linux结束进程可以用哪些函数,它们之间有何区别?

sqlserver55555_sqlserver把小数点后面多余的0去掉-程序员宅基地

文章浏览阅读134次。select 5000/10000.0 --想变成0.5select 5500/10000.0 --想变成0.55select 5550/10000.0 --想变成0.555select 5555/10000.0 --想变成0.5555其结果分别为:0.5000000 0.5500000 0.5550000 0.5555000一、如果想去掉数字5后面多余的0 ,需要转化一下:selec..._sql server 去小数 0

Angular6 和 RXJS6 的一些改动_angular6,requestoptions改成了什么-程序员宅基地

文章浏览阅读3.1k次。例一:import { Injectable } from '@angular/core';import { Observable } from 'rxjs';import { User } from "./model/User";import { map } from 'rxjs/operators';import { Http, Response, Headers, RequestOp..._angular6,requestoptions改成了什么

推荐文章

热门文章

相关标签