首页 > 其他分享 >docker 常用命令

docker 常用命令

时间:2024-03-08 15:55:27浏览次数:24  
标签:容器 -- 指定 常用命令 镜像 docker ID

docker 常用命令

1. docker search [OPTIONS] NAME   # 搜索 Docker Hub 上的镜像。
-q :只显示仓库名。
--filter: 设置过滤条件,比如搜索官方镜像可以使用--filter="is-official=true"。
limit: 设置搜索结果的最大条数。
--no-trunc: 显示完整的镜像描述,而不是截断的描述。
例子: docker search --filter=version=1.17.1 nginx

2. docker pull [OPTIONS] NAME  # 从仓库拉取或者更新指定的镜像。
--all-tags`:拉取仓库中所有标签的镜像。
-a, --arch string`:设置镜像的CPU体系结构。
--disable-content-trust`:禁用对镜像签名的验证。
--platform string`:指定镜像的平台,可以是多个值,用逗号分隔。
--quiet, -q`:安静模式,只输出镜像ID。
--help`:显示帮助信息。
--version`:显示版本信息。
例子: docker pull example

3. docker images [OPTIONS]  # 列出本地存储的镜像。
-a, --all:显示所有镜像,未标记为最新的历史镜像。
--digests:显示每个镜像的摘要信息,这些信息有助于验证镜像内容的完整性。
-f, --filter:通过设置过滤条件来缩小查询结果,比如可以根据仓库名、标签、镜像ID等来过滤。
--format:指定输出格式,可以是文本或者JSON等,以便于脚本处理或者与其他工具集成。
--no-trunc:不截断输出,默认情况下,如果输出内容太长,docker images命令会截断显示。
-q, --quiet:只显示镜像ID。
REPOSITORY:镜像的仓库源,比如ubuntu、centos等。
TAG:镜像的标签,通常代表镜像的版本或者特性,如latest代表最新版本。
IMAGE ID:镜像的唯一ID,用于识别镜像。
CREATED:镜像的创建时间。
SIZE:镜像的大小,通常以MB或者KB表示。
例子:docker images -a

4. docker rmi [OPTIONS] IMAGE [IMAGE...]  # 删除一个或多个镜像。
-a:显示所有容器,包括未停止的容器。
-f, --filter <filter>:通过指定的过滤器来显示特定条件的容器。
-l, --label <label>:显示具有指定标签的容器。
-n, --no-trunc:不截断容器状态。
-q:仅显示容器的ID,不显示其他详细信息。
-s:按容器使用情况(CPU、内存等)进行排序。
-u:按容器的用户ID进行排序。
-p:显示公共镜像ID。
--format <template>:指定输出格式,支持的模板语法有text和json。
例子:docker rmi $(docker images -aqf "dangling=true")  # 删除所有未使用的镜像

5. docker run [OPTIONS] IMAGE [COMMAND] [ARG...]   # 创建并启动一个新的容器。
-d: 后台运行容器。使用这个选项,容器会在后台运行,并且返回容器ID,让你可以查看到运行中的容器。
-i: 以交互模式运行容器。即使容器在后台运行,也会保持STDIN开启,允许你交互式地进入容器。
-t: 分配一个伪终端。通常与 -i 结合使用,让你可以在容器内有一个终端会话。
--name: 为容器指定一个名称。如果未指定,Docker会随机生成一个名称。
-p: 端口映射。将容器的端口映射到宿主机的端口。例如 -p 8080:80 将容器的80端口映射到宿主机的8080端口。
-v: 挂载卷。将宿主机的目录或文件挂载到容器中。例如 -v /my/local/path:/my/container/path。
--network: 指定容器使用的网络类型。例如 --network=bridge 使用默认桥接网络。
--env: 设置容器环境变量。例如 --env KEY=value。
--rm: 当容器退出时自动删除容器。通常用于短生命周期的容器。
--link: 创建一个链接到另一个容器的网络连接。例如 --link db:db。
--privileged: 以特权模式运行容器,这意味着容器将获得所有主机设备的访问权限。
--volume-driver: 指定容器数据卷的驱动程序。
--ulimit: 设置容器的资源限制,如 --ulimit nproc=4 限制进程数。
--detach-keys: 指定分离容器的键盘序列。
--env-file: 从文件中读取环境变量。
--hostname: 设置容器的主机名。
--dns: 设置容器使用的 DNS 服务器。
--shm-size: 设置容器的共享内存大小。
--add-host: 通过指定 --add-host 参数,可以将自定义的主机名与相应的IP地址关联起来,以便在容器内部使用这些自定义主机名进行网络通信。
--annotation: 允许为容器添加注释,注释是容器的元数据,用于提供额外信息,比如作者、版本、构建日期等。
--restart: 设置容器的重启策略,如 --restart=always 表示容器退出时总是重启。
--cpu-shares: 设置容器CPU权重。
例子:docker run -d -it --name yoyo_centos centos:7

6. docker ps [OPTIONS]  # 列出当前运行的容器。
-a:显示所有容器,包括未停止的容器。
-f, --filter <filter>:通过指定的过滤器来显示特定条件的容器。
-l, --label <label>:显示具有指定标签的容器。
-n, --no-trunc:不截断容器状态。
-q:仅显示容器的ID,不显示其他详细信息。
-s:按容器使用情况(CPU、内存等)进行排序。
-u:按容器的用户ID进行排序。
-p:显示公共镜像ID。
--format <template>:指定输出格式,支持的模板语法有text和json。
例子:docker ps -a

7. docker stop [OPTIONS] CONTAINER [CONTAINER...]  # 停止一个或多个运行中的容器。
-t, --time int:指定停止容器前的等待时间,单位为秒,默认为10秒。
-容器ID或容器名称:要停止的容器的ID或名称。可以同时指定多个容器。
例子:docker stop abc123def456

8. docker start [OPTIONS] CONTAINER [CONTAINER...]  # 启动一个或多个停止的容器。
-a, --attach:在容器启动时附加到容器的标准输入。
-d, --detach:在后台启动容器,不显示容器控制台输出。
-i, --interactive:容器的标准输入保持打开,并在容器启动时附加到它。
-t, --tty:分配一个伪终端(PTY)到容器,即使容器不是交互式的话也启用终端设备。
-n, --name:为正在运行的容器指定一个新名称。
all:启动所有已停止的容器。
例子:docker start <container_id>

9. docker restart [OPTIONS] CONTAINER [CONTAINER...]  # 重启一个或多个容器。
-name:指定要重启的容器名称。
-id 或 -id=*: 指定要重启的容器 ID。
-l 或 --label=*: 指定要重启的容器标签。
例子:docker restart mycontainer

10. docker logs [OPTIONS] CONTAINER  # 获取容器的日志。
-f 或 --follow:持续输出日志,直到命令被取消或容器停止。
--since:输出指定时间之后的日志。
--until:输出到指定时间之前的日志。
-t 或 --timestamps:在日志中显示时间戳。
--tail:输出最近的指定行数日志。
--details:更详细的日志信息,包括容器名称和退出码。
例子:docker logs my-container

11. docker exec [OPTIONS] CONTAINER [COMMAND] [ARG...]  # 在运行的容器中执行命令。
-it 表示交互式执行,即进入容器并打开一个交互式终端。[container_id/container_name] 是要执行命令的 Docker 容器,可以是容器 ID 或容器名称。[command] 是要在容器中执行的命令。
-d:在后台运行命令,并返回容器的 ID。
--privileged:给予容器特殊的权限,允许它访问和修改根文件系统、设备节点和内核对象。
--net=[network_name/network_id]:指定要使用的网络。
--pid=[pid_mode]:指定 PID 隔离模式。
--privileged=true/false:是否给予容器特殊的权限。
--name=[container_name]:为执行命令的容器指定一个名称。
--rm:当容器退出时自动删除容器。
--env=KEY=VALUE:设置环境变量。
--volume=[host_path:]container_path[:options]:挂载主机目录或 Docker 卷到容器内。
例子:docker exec -it 4496a6e86fb2 /bin/bash  # 进入运行的docker

12. docker inspect [OPTIONS] NAME|ID  # 获取容器的配置信息。
-f, --format: 指定要显示的信息格式。可以使用模板语法来指定要显示的信息。例如,`{{.ID}}`将只显示容器的ID。
-o, --output: 指定要输出的字段。可以使用逗号分隔的字段名称列表来指定要显示的信息。
< container>: 要查看的容器名称或ID。
例子:docker inspect my_container

13. docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH  # 从容器中复制文件或目录到本地文件系统。
[OPTIONS]: 这是可选参数,可以根据需要选择使用。
CONTAINER:SRC_PATH: 容器ID或名称以及源路径。SRCPATH 指定在容器内需要复制的文件的路径。例如 96f7f14e99ab:/www/ 表示容器ID为 96f7f14e99ab 中的 /www/ 目录。
DEST_PATH: 目标路径,可以是宿主机的路径或容器内的路径。如果目标路径是宿主机的路径,则表示将容器内的文件复制到宿主机上;如果目标路径是容器内的路径,则表示将宿主机的文件复制到容器内。例如 /www/ 可以是宿主机的路径,或者 96f7f14e99ab:/www/ 表示容器内的路径。
-a, --archive: 归档模式,复制所有UID / GID信息,相当于 cp -a。
-L, --follow-link: 如果源是符号链接,则复制链接指向的文件。
-p, --preserve=mode,links,ownership: 保留文件的权限、链接和所有权。
-q, --quiet: 只显示错误信息。
-d, --directory: 复制目录而非文件,保持目录结构。
例子:docker cp myfile.txt mycontainer:/data/

14. docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]  # 将容器的当前状态作为一个新的镜像保存。
-a, --author string:指定作者信息。
-c, --change list:在提交时应用一系列的Dockerfile指令。
-m, --message string:提交时的信息。
-p, --pause:提交过程中暂停容器(默认为真)。
例子:docker commit my_container my_new_image

15. docker diff [OPTIONS] CONTAINER  # 显示容器的更改。
-a: 列出所有变化的层。
-d: 列出并显示 diff。
-f FILE: 从指定文件读取查看改变信息。
-m FILE: 从指定文件读取并显示层的内容差异。
-r: 递归查看子镜像。
例子:docker diff mycontainer

16. docker push:用于将本地镜像推送到 Docker 仓库。参数说明:
* `repository/image_name`: 要推送的镜像的仓库和名称。
例子:docker push my-image:latest

17. docker rm:用于删除停止的容器。参数说明:
* `container_name`: 指定要删除的容器的名称或 ID。
例子:docker rm $(docker ps -a -q)  # 删除多个已停止的容器

18. docker build:用于从 Dockerfile 构建镜像。参数说明:
* `-t tag_name`: 指定镜像的名称。
* `-f Dockerfile`: 使用自定义的 Dockerfile 进行构建。
* `context/path/to/dir`: 指定构建上下文路径。
例子:docker build -t myimage .

19. docker volume
--name:指定volume的名称,名称最好具有唯一性,方便识别和管理。
-d:后台运行volume。
-rm:当容器退出时自动删除volume。
-p:将volume映射到主机上的一个目录。
-o:设置volume的选项。
--label:设置volume的标签。
- list:列出所有的volume。
- create:创建新的volume。
- inspect:查看volume的详细信息。
- mount:查看volume的挂载信息。
- umount:卸载指定的volume。
- rm:删除指定的volume。
例子:`docker volume ls` 列出所有 Docker 数据卷。

20. docker network
- 含义:管理 Docker 的网络设置。
例子:`docker network ls` 列出所有 Docker 网络。

21. docker unpause
- 含义:恢复容器中的所有进程。
例子:`docker unpause container_id` 恢复指定的容器。

22. docker pause
- 含义:暂停容器中的所有进程。
例子:`docker pause container_id` 暂停指定的容器。

23. docker inspect
- 含义:查看容器的配置信息。
例子:`docker inspect container_id` 查看指定容器的详细配置信息。

  

 

标签:容器,--,指定,常用命令,镜像,docker,ID
From: https://www.cnblogs.com/yoyo1216/p/18061162

相关文章

  • docker 部署 django + mysql + vue 项目
    ​项目目录结构,在Vue和Django项目根目录下创建Dockerfile文件,在父级目录下创建docker-compose.yml文件Project#父级目录├─client#vue3项目目录│├─public│└─src│├─*files│├─*files│├─Dockerfile└─server#Django项......
  • NPM 常用命令
    本文为joshua317原创文章,转载请注明:转载自joshua317博客 https://www.joshua317.com/article/319NPM提供了很多命令,例如install和publish,使用npmhelp可查看所有命令。NPM提供了很多命令,例如install和publish,使用npmhelp可查看所有命令。$npmhelpnpm<command>Usage:......
  • Spring boot常用命令总结
    1.打包jar包mvnpackageclean-Dmaven.test.skip=truemvnpackage-Dmaven.test.skip=true2.结束当前运行的程序ps-aux|grepjavakill-9$(ps-ef|grep/usr/bin/chromedriver|grep-vgrep|awk'{print$2}')kill-9$(ps-ef|grep/opt/google/chrome/chrome|grep......
  • 如何通过docker容器查看run命令
    1.当你需要迁移docker的时候,忘记的run的命令可以使用一下方法blossom-backend是你的容器名字或者容器IDdockerinspect--format'dockerrun\--name{{printf"%q".Name}}\{{-with.HostConfig}}{{-if.Privileged}}--privileged\{{-en......
  • 基于docker的emqx,数据持久化,防止重启配置丢失
    docker中运行的emqx,采用在內置账号、密码进行身份认证的情况下,如果容器重启,那么上述配置将丢失。一下操作基于emqx4.4.191、先运行emqxdocker容器dockerrun-d--nameemqxemqx/emqx:4.4.192、将容器中的emqx的配置copy到本地:dockercpemqx:/opt/emqx/etc/...本地目......
  • Linux环境下Docker部署.Net8应用
    ......
  • docker安装zipkin
    命令如下,调整后执行即可:dockerrun--namezipkin\-p9411:9411\--restart=always\-eSTORAGE_TYPE=mysql\-eMYSQL_HOST=ip地址\-eMYSQL_TCP_PORT=3306\-eMYSQL_DB=连接数据库名称\-eMYSQL_USER=root\-eMYSQL_PASS=数据库密码\-dopenzipkin/zipkin:2.24......
  • docker安装MongoDB
    需注意,docker版本不能太低,否则执行会报:missingsignaturekey(缺少签名密钥):需要重新安装docker,所以docker最开始最好安装新版本:yuminstalldocker-ce-y参考的链接:https://www.4vsy.com/article/231.html,https://blog.csdn.net/qq_25430563/article/details/127977667doc......
  • docker安装nacos
    如下,目录配置自行创建、调整dockerrun--namenacos-2.1.0\-p8848:8848\-p9848:9848\-p9849:9849\--privileged=true\--restart=always\-eJVM_XMS=256m\-eJVM_XMX=256m\-eMODE=standalone\-eTIME_ZONE='Asia/Shanghai'\-ePREFER_HOST_......
  • python3代码转换成docker镜像启动
    1.打包成docker镜像来使用切到Tags,搜索3.11选择python:3.11.4-slim-bullseye2.在压测脚本的根目录中,创建Dockerfile文件: FROMpython:3.11.4-slim-bullseyeWORKDIR/opt/appCOPYrequirements.txt./ENVhost=nullENVport=nullENVonlyResetJob=nullRUNpip......