Docker 常用命令

简介: Docker 常用命令

🎈1. 帮助启动类命令

启动 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

🎈2. 镜像命令

列出本地主机上的镜像

docker images

options 说明

docker images -a     //列出本地所有的镜像
docker images -q     //只显示镜像ID

搜索镜像名称

docker search [options] 镜像名称

options 说明

docker search --limit 5 redis     //只列出5个redis镜像,不加的话默认25个

下载镜像

docker pull 镜像名称[:TAG]    // 没有TAG就是最新版,docker pull 镜像名称:latest

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

docker system df

删除镜像

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

🎈3. 容器命令

容器是运行在镜像的基础之上的,因此,首先需要下载一个镜像,以 ubuntu 为例

docker pull ubuntu
//docker pull centos

新建并启动容器

docker run [options] image [command][arg...]

options 说明:

--name="容器新名字"  为容器指定一个名称
-d:后台运行容器并返回容器ID,即启动守护式容器(后台运行)
-i: 以交互模式运行容器,通常与 -t 同时使用
-t: 为容器重新分配一个伪输入终端,通常与-i同时使用,即启动交互式容器(前台有伪终端,等待交互)
-P: 随机端口映射,大写 P
-p: 指定端口映射,小写 p

启动前台交互式容器

docker run -it ubuntu /bin/bash
参数说明:
-i:交互式操作
-t: 终端
ubuntu: ubuntu 镜像
/bin/bash: 放在镜像后的命令

2e718f6de6d94987ae2f2182c528d9c8.png

如果想要退出,直接输入 exit 命令

2e718f6de6d94987ae2f2182c528d9c8.png

列出当前所有正在运行的容器

docker ps [options]

options 说明

-a: 列出当前所有正在运行的容器和历史运行过的
-l: 显示最近创建的容器
-n: 显示最近n个创建的容器
-q: 静默模式,只显示容器编号

退出容器

//两种退出方式
//1.run 运行容器,exit退出,容器停止
exit        
//2.run运行容器,crtl+p+q退出,容器不停止
ctrl+p+q

启动已停止运行的容器

docker start 容器ID或容器名

重启容器

docker restart 容器ID或者容器名

停止容器

docker stop 容器ID或容器名

强制停止容器

docker kill 容器ID或容器名

删除已停止的容器

docker rm 容器ID
// 一次性删除多个容器实例
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm

启动守护式容器(后台服务器)

docker run -d 容器名

以启动镜像 ubuntu 为例,以后台模式启动一个容器

docker run -d ubuntu

之后,使用命令docker ps -a 进行查看,会发现容器已经退出了。

2e718f6de6d94987ae2f2182c528d9c8.png

由于 docker 的机制问题,docker 容器后台运行,就必须有一个前台进程。 容器运行的命令如果不是那些一直挂起的命令(比如运行 top, tail),就会自动退出。


以 nginx 为例,通常情况下,我们配置启动服务只需要启动响应的 service 即可,例如 service nginx start,但是这样做 nginx 为后台进程模式运行,就导致 docker 前台没有运行的应用,这样的容器后台启动后,会觉得无事可做而立即“自杀”。因此,最佳解决方法就是,将要运行的程序以前台进程的形式运行。最常见的就是命令行模式,表示还有交互操作不中断。


查看容器日志

docker logs 容器ID

查看容器内运行的进程

docker top 容器ID

查看容器内部细节

docker inspect 容器ID

进入正在运行的容器并以命令行交互

docker exec -it 容器ID bashShell

2e718f6de6d94987ae2f2182c528d9c8.png

执行 exit 后,重新进入 docker,但是这次使用如下命令

docker attach 容器ID

2e718f6de6d94987ae2f2182c528d9c8.png

可看到,在执行 exit 命令之后,再次查看运行的容器,发现此时没有正在运行的容器了!


这是因为,attach 直接进入容器启动命令终端,不会启动新的进程,用 exit 退出,会导致容器的停止。然而,exec 是在容器中打开新的终端,并且可以启动新的进程,用 exit 退出,不会导致容器的停止。推荐使用 docker exec 命令,这样退出容器终端时,不会导致容器的停止!

从容器内拷贝文件到主机

docker cp 容器ID:容器内路径 目的主机路径

导入和导出容器

export 导出容器的内容留作为一个tar归档文件[对应import命令]
import 从tar包中的内容创建一个新的文件系统再导入为镜像[对应export]

案例演示:将容器名为 ubuntu 导出,内容留为一个归档文件,之后删除 docker 中的容器 ubuntu。再将归档文件导入到 docker 容器,创建 ubuntu 镜像实例。

导出容器:

2e718f6de6d94987ae2f2182c528d9c8.png

导入容器

2e718f6de6d94987ae2f2182c528d9c8.png

🎈4. Docker 常用命令可视化

对于一些常用的命令,docker 官方也作了总结,如下图所示

image.png

相关文章
|
1月前
|
Linux 持续交付 Go
Docker常用命令总结
这篇文章总结了Docker的基本操作,包括Docker的简介、镜像、容器和仓库的概念。介绍了如何在CentOS上安装和卸载Docker,以及常用Docker命令,如查看和删除镜像、运行和管理容器、文件拷贝和日志查看。还提供了一个curl命令示例来测试本地容器服务。完整内容请参考原文链接:[Docker命令总结](https://blog.csdn.net/javayoungcoolboy/article/details/134975314)。
|
10天前
|
Docker 容器
docker network inspect 查询出来的网络的创建命令是什么
【6月更文挑战第17天】docker network inspect 查询出来的网络的创建命令是什么
18 1
|
15天前
|
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 的强大功能,并将其
34 2
|
20天前
|
Shell Docker 容器
深入探索Docker容器管理:常用命令一览(1)
深入探索Docker容器管理:常用命令一览(1)
|
22天前
|
关系型数据库 应用服务中间件 nginx
docker基础,docker安装mysql,docker安装Nginx,docker安装mq,docker基础命令
docker基础,docker安装mysql,docker安装Nginx,docker安装mq,docker基础命令
|
22天前
|
Docker 容器
docker命令大全
docker命令大全
17 0
|
1月前
|
运维 Linux Shell
Docker详解(七)——Docker辅助命令
Docker详解(七)——Docker辅助命令
36 4
|
28天前
|
Linux Docker 容器
蓝易云 - 【Linux】如何在linux系统重启或启动时执行命令或脚本(也支持docker容器内部)
以上就是在Linux系统和Docker容器中设置启动时运行命令或脚本的方法。希望对你有所帮助。
98 0
|
29天前
|
流计算 Docker 容器
在docker中玩flink时候记录一些组合命令
在docker中玩flink时候记录一些组合命令
19 0
|
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 \
120 1