Docker常用命令汇总

简介: Docker常用命令汇总

一、Docker基础命令

  • 启动docker:systemctl start docker
  • 关闭docker:systemctl stop docker
  • 重启docker:systemctl restart docker
  • docker设置随服务启动而自启动:systemctl enable docker
  • 查看docker 运行状态:systemctl status docker
  • 查看docker 版本号信息:docker version/docker info
  • docker 帮助命令:docker --help
  • 查看docker具体命令的使用帮助:docker ps --help

二、Docker本地镜像管理

查看本地镜像列表[images]

语法:docker images [OPTIONS] [REPOSITORY[:TAG]]

OPTIONS说明:

  • -a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
  • --digests :显示镜像的摘要信息;
  • -f :显示满足条件的镜像;
  • --format :指定返回值的模板文件;
  • --no-trunc :显示完整的镜像信息;
  • -q :只显示镜像ID。
docker images

三、Dockerfile 指令详解

1 FROM 指定基础镜像

FROM 指令用于指定其后构建新镜像所使用的基础镜像。FROM 指令必是 Dockerfile 文件中的首条命令,启动构建流程后,Docker 将会基于该镜像构建新镜像,FROM 后的命令也会基于这个基础镜像。

FROM语法格式为:

FROM

FROM :

FROM :

通过 FROM 指定的镜像,可以是任何有效的基础镜像。FROM 有以下限制:

FROM 必须 是 Dockerfile 中第一条非注释命令

在一个 Dockerfile 文件中创建多个镜像时,FROM 可以多次出现。只需在每个新命令 FROM 之前,记录提交上次的镜像 ID。

tag 或 digest 是可选的,如果不使用这两个值时,会使用 latest 版本的基础镜像

2、Docker使用Dockerfile创建镜像[build]

语法:docker build [OPTIONS] PATH | URL | -

OPTIONS说明:

  • --build-arg=[] :设置镜像创建时的变量;
  • --cpu-shares :设置 cpu 使用权重;
  • --cpu-period :限制 CPU CFS周期;
  • --cpu-quota :限制 CPU CFS配额;
  • --cpuset-cpus :指定使用的CPU id;
  • --cpuset-mems :指定使用的内存 id;
  • --disable-content-trust :忽略校验,默认开启;
  • -f :指定要使用的Dockerfile路径;
  • --force-rm :设置镜像过程中删除中间容器;
  • --isolation :使用容器隔离技术;
  • --label=[] :设置镜像使用的元数据;
  • -m :设置内存最大值;
  • --memory-swap :设置Swap的最大值为内存+swap,"-1"表示不限swap;
  • --no-cache :创建镜像的过程不使用缓存;
  • --pull :尝试去更新镜像的新版本;
  • -q :安静模式,成功后只输出镜像ID;
  • --rm :设置镜像成功后删除中间容器;
  • --shm-size :设置/dev/shm的大小,默认值是64M;
  • --ulimit :Ulimit配置。

实例:

使用当前目录的Dockerfile创建镜像:

docker build -t w3xue/ubuntu:v1 .

使用URL github.com/creack/docker-firefox 的 Dockerfile 创建镜像:

docker build github.com/creack/docker-firefox

3、Dcoker查看指定镜像的创建历史[history]

语法:docker history [OPTIONS] IMAGE

OPTIONS说明:

  • -H :以可读的格式打印镜像大小和日期,默认为true;
  • --no-trunc :显示完整的提交记录;
  • -q :仅列出提交记录ID。

实列:

查看容器nginx的创建历史记录:

docker history nginx

4、 RUN 执行命令

在镜像的构建过程中执行特定的命令,并生成一个中间镜像。格式:

#shell格式

RUN

#exec格式

RUN ["executable", "param1", "param2"]

RUN 命令将在当前 image 中执行任意合法命令并提交执行结果。命令执行提交后,就会自动执行 Dockerfile 中的下一个指令。

层级 RUN 指令和生成提交是符合 Docker 核心理念的做法。它允许像版本控制那样,在任意一个点,对 image 镜像进行定制化构建。

RUN 指令创建的中间镜像会被缓存,并会在下次构建中使用。如果不想使用这些缓存镜像,可以在构建时指定 --no-cache 参数,如:docker build --no-cache。

OPTIONS说明:

  • -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
  • -d: 后台运行容器,并返回容器ID;
  • -i: 以交互模式运行容器,通常与 -t 同时使用;
  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  • --name="nginx-lb": 为容器指定一个名称;
  • --dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;
  • --dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;
  • -h "mars": 指定容器的hostname;
  • -e username="ritchie": 设置环境变量;
  • --env-file=[]: 从指定文件读入环境变量;
  • --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;
  • -m :设置容器使用内存最大值;
  • --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;
  • --link=[]: 添加链接到另一个容器;
  • --expose=[]: 开放一个端口或一组端口;

实例:

使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为testNginx :

docker run --name testNginx -d nginx:latest

四、查看本地正在运行的容器[ps]

语法:docker ps [OPTIONS]

OPTIONS说明:

  • -a :显示所有的容器,包括未运行的。
  • -f :根据条件过滤显示的内容。
  • --format :指定返回值的模板文件。
  • -l :显示最近创建的容器。
  • -n :列出最近创建的n个容器。
  • --no-trunc :不截断输出。
  • -q :静默模式,只显示容器编号。
  • -s :显示总的文件大小。
docker ps

五、Dcoker获取容器的日志[logs]

语法: docker logs [OPTIONS] CONTAINER

OPTIONS说明:

  • -f : 跟踪日志输出
  • --since :显示某个开始时间的所有日志
  • -t : 显示时间戳
  • --tail :仅列出最新N条容器日志

实例:

跟踪查看容器yyflightNginx的日志输出(帮你查看这个容器在某个时间段被执行了什么操作):

docker logs -f yyflightNginx

六、Docker列出指定的容器的端口映射[port]

docker port :列出指定的容器的端口映射,或者查找将PRIVATE_PORT NAT到面向公众的端口。

实例:

查看容器testNginx的端口映射情况:

docker port testNginx

七、Docker删除本地一个或多少镜像[rmi]

语法:docker rmi [OPTIONS] IMAGE [IMAGE...]

OPTIONS说明:

  • -f :强制删除;
  • --no-prune :不移除该镜像的过程镜像,默认移除;

实例:        

强制删除本地镜像nginx/ubuntu

docker rmi -f nginx/ubuntu




文章下方有交流学习区!一起学习进步!也可以前往官网,加入官方微信交流群

创作不易,如果觉得文章不错,可以点赞收藏评论

你的支持和鼓励是我创作的动力❗❗❗

官网Doker 多克;官方旗舰店首页-Doker 多克-淘宝网 全品优惠

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
1月前
|
Linux 持续交付 Go
Docker常用命令总结
这篇文章总结了Docker的基本操作,包括Docker的简介、镜像、容器和仓库的概念。介绍了如何在CentOS上安装和卸载Docker,以及常用Docker命令,如查看和删除镜像、运行和管理容器、文件拷贝和日志查看。还提供了一个curl命令示例来测试本地容器服务。完整内容请参考原文链接:[Docker命令总结](https://blog.csdn.net/javayoungcoolboy/article/details/134975314)。
|
3天前
|
Ubuntu 应用服务中间件 Linux
Docker基本操作命令
Docker 允许用户基于现有的容器或通过 Dockerfile 自定义镜像。Dockerfile 是一个文本文件,包含了创建镜像所需的所有命令。 命令: docker build [OPTIONS] PATH PATH:Dockerfile 所在的路径 OPTIONS:构建过程中的可选参数,如 -t 用于标记镜像名和标签 例如,使用当前目录的 Dockerfile 来构建镜像,并标记为 my_image:latest: docker build -t my_image:latest . 以上是 Docker 基础命令的简介,通过这些命令,你可以开始探索 Docker 的强大功能,并将其
16 2
|
8天前
|
Shell Docker 容器
深入探索Docker容器管理:常用命令一览(1)
深入探索Docker容器管理:常用命令一览(1)
|
10天前
|
关系型数据库 应用服务中间件 nginx
docker基础,docker安装mysql,docker安装Nginx,docker安装mq,docker基础命令
docker基础,docker安装mysql,docker安装Nginx,docker安装mq,docker基础命令
|
10天前
|
Docker 容器
docker命令大全
docker命令大全
|
16天前
|
Linux Docker 容器
蓝易云 - 【Linux】如何在linux系统重启或启动时执行命令或脚本(也支持docker容器内部)
以上就是在Linux系统和Docker容器中设置启动时运行命令或脚本的方法。希望对你有所帮助。
93 0
|
17天前
|
流计算 Docker 容器
在docker中玩flink时候记录一些组合命令
在docker中玩flink时候记录一些组合命令
17 0
|
1月前
|
运维 Linux Shell
Docker详解(七)——Docker辅助命令
Docker详解(七)——Docker辅助命令
31 4
|
1月前
|
存储 Shell Docker
docker 部署单节点的etcd以及 常用使用命令
在 Docker 中部署单节点的 etcd 以及一些常用命令的操作,可以按照以下步骤进行: ## 一、部署单节点 etcd 1. **拉取 etcd Docker 镜像**:您可以从 Docker Hub 拉取 etcd 的官方镜像。 ```shell docker pull quay.io/coreos/etcd:latest ``` 2. **启动 etcd 容器**:使用 `docker run` 命令来启动 etcd 容器。以下是一个示例命令,其中将容器的 2379 端口映射到主机的 2379 端口: ```shell docker run -d \
|
1月前
|
NoSQL Linux Shell
2.Docker常用命令(linux)
2.Docker常用命令(linux)