Docker 服务、镜像、容器之命令
Docker是一个强大的容器化平台,能够帮助开发者高效地构建、部署和管理应用程序。本文将详细介绍Docker的服务命令、镜像命令和容器命令,帮助你快速上手Docker。
一、Docker的服务相关命令
在使用Docker之前,了解如何启动和管理Docker服务是非常重要的。以下是一些常用的帮助启动类命令:
1. 启动Docker服务
systemctl start docker
该命令用于启动Docker服务,确保Docker守护进程正在运行。
2. 停止Docker服务
systemctl stop docker
该命令用于停止Docker服务,停止所有正在运行的容器。
3. 重启Docker服务
systemctl restart docker
该命令用于重启Docker服务,适用于需要重新加载配置或解决问题时。
4. 查看Docker服务状态
systemctl status docker
该命令用于查看Docker服务的当前状态,包括是否正在运行及其启动时间等信息。
5. 设置Docker开机自启
systemctl enable docker
该命令用于设置Docker服务在系统启动时自动启动。
6. 查看Docker的概要信息
docker info
该命令提供Docker的系统信息,包括版本、存储驱动、网络设置等。
7. 查看Docker总体帮助文档
docker --help
该命令显示Docker的总体帮助信息,列出可用的Docker命令。
8. 查看特定命令的帮助文档
docker <具体命令> --help
例如:
docker run --help
该命令显示关于特定命令的详细用法和选项说明。
二、Docker的镜像命令
Docker镜像是容器的基础,以下是一些常用的镜像命令:
1. 列出本地主机上的镜像
docker images
该命令列出本地主机上所有可用的Docker镜像,输出示例:
REPOSITORY TAG IMAGE ID CREATED SIZE
my-app 1.0 abcdef123456 2 days ago 64MB
2. 搜索镜像
docker search <镜像名字>
该命令在Docker Hub上搜索指定名称的镜像。例如:
docker search nginx
可以加上--limit
参数来限制返回结果的数量。
3. 下载镜像
docker pull <镜像名字>[:TAG]
该命令从Docker Hub下载指定的镜像。如果不指定TAG,则默认下载最新版。例如:
docker pull nginx:latest
4. 查看镜像、容器、数据卷所占的空间
docker system df
该命令显示Docker系统的磁盘使用情况,包括镜像、容器和数据卷所占用的空间。
5. 删除镜像
docker rmi <镜像名字或ID>
该命令用于删除指定的Docker镜像。如果有容器依赖于该镜像,则无法删除。可以使用-f
选项强制删除。例如:
docker rmi nginx
三、Docker的容器命令
容器是运行应用的实例,以下是一些常用的容器命令:
1. 启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
该命令用于创建并启动一个新的容器。常用选项说明:
-
--name="容器新名字"
:为容器指定一个名称。 -
-d
:后台运行容器并返回容器ID。 -
-i
:以交互模式运行容器,通常与-t
同时使用。 -
-t
:为容器分配一个伪输入终端,通常与-i
同时使用。
示例:
docker run -it ubuntu /bin/bash
此命令使用ubuntu
镜像以交互模式启动一个容器,并进入容器的bash终端。
2. 列出当前所有正在运行的容器
docker ps
该命令列出所有正在运行的容器。
3. 列出所有容器(包括停止的)
docker ps -a
该命令列出所有容器,无论其当前状态如何。
4. 退出容器
-
输入
exit
:退出并停止容器。 -
使用
Ctrl + P + Q
:退出但不停止容器,容器将继续运行。
5. 启动已停止的容器
docker start <容器ID或名称>
该命令用于启动一个已停止的容器。
6. 重启容器
docker restart <容器ID或名称>
该命令用于重启正在运行的容器。
7. 停止容器
docker stop <容器ID或名称>
该命令用于停止正在运行的容器。
8. 强制停止容器
docker kill <容器ID或名称>
该命令用于强制停止正在运行的容器。
9. 删除已停止的容器
docker rm <容器ID>
该命令用于删除已停止的容器。
10. 查看容器日志
docker logs <容器ID>
该命令用于查看指定容器的日志输出。
11. 查看容器内运行的进程
docker top <容器ID>
该命令用于查看容器内正在运行的进程信息。
12. 查看容器内部细节
docker inspect <容器ID>
该命令返回容器的详细信息,包括网络设置、挂载点等。
13. 进入正在运行的容器并以命令行交互
docker exec -it <容器ID> bash
该命令在指定容器中打开一个新的bash终端。
14. 从容器内拷贝文件到主机上
docker cp <容器ID>:<容器内路径> <目的主机路径>
该命令用于将容器内的文件复制到主机上。
15. 导入和导出容器
-
导出容器的内容为tar归档文件:
docker export <容器ID> > 文件名.tar
-
从tar包中的内容创建一个新的文件系统并导入为镜像:
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号