一、简介
Docker 容器是基于 Docker 镜像创建的运行实例。容器提供了隔离的运行环境,可以在不同的操作系统上以一致的方式运行应用程序。以下是对 Docker 容器操作的详细介绍,包括常用的命令及其参数解释。
二、容器操作
(一)运行容器
1. 基本命令
docker run [选项] <镜像名>:<标签>
2. 参数解释
-
docker run
:创建并启动一个新的容器。 -
[选项]
:-
-d
:后台模式运行容器。 -
--rm
:容器退出时自动删除。 -
--name <名称>
:指定容器的名称。 -
-p <宿主机端口>:<容器端口>
:将容器端口映射到宿主机端口。 -
-v <宿主机路径>:<容器路径>
:将宿主机的目录或文件挂载到容器内部。 -
-e <环境变量名>=<值>
:设置容器内的环境变量。 -
--network <网络名>
:指定容器使用的网络。 -
--entrypoint <命令>
:覆盖镜像的默认入口点。
-
-
<镜像名>:<标签>
:指定运行的镜像及其标签。
3. 示例
docker run -d --name my-nginx -p 80:80 nginx:latest
-
运行一个名为
my-nginx
的容器,使用nginx:latest
镜像。 -
容器的 80 端口映射到宿主机的 80 端口。
-
容器在后台运行,退出时自动删除。
(二)查看容器
1. 查看运行中的容器
docker ps
2. 参数解释
-
docker ps
:列出所有正在运行的容器。 -
-a
:列出所有容器(包括未运行的)。 -
-n <数字>
:列出最近运行的指定数量的容器。 -
--format
:自定义输出格式。
3. 示例
docker ps
输出示例:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1234567890ab nginx:latest "/docker-entrypoint.…" 1 minute ago Up 1 minute 0.0.0.0:80->80/tcp my-nginx
(三)停止容器
1. 基本命令
docker stop <容器ID或名称>
2. 参数解释
-
docker stop
:停止正在运行的容器。 -
<容器ID或名称>
:指定要停止的容器。
3. 示例
docker stop my-nginx
(四)启动容器
1. 基本命令
docker start <容器ID或名称>
2. 参数解释
-
docker start
:启动已停止的容器。 -
<容器ID或名称>
:指定要启动的容器。
3. 示例
docker start my-nginx
(五)重启容器
1. 基本命令
docker restart <容器ID或名称>
2. 参数解释
-
docker restart
:重启容器。 -
<容器ID或名称>
:指定要重启的容器。
3. 示例
docker restart my-nginx
(六)删除容器
1. 基本命令
docker rm <容器ID或名称>
2. 参数解释
-
docker rm
:删除容器。 -
-f
:强制删除正在运行的容器。 -
-v
:删除与容器关联的数据卷。 -
<容器ID或名称>
:指定要删除的容器。
3. 示例
docker rm my-nginx
(七)进入容器
1. 基本命令
docker exec -it <容器ID或名称> /bin/bash
2. 参数解释
-
docker exec
:在运行中的容器内执行命令。 -
-it
:交互模式,分配一个伪终端。 -
<容器ID或名称>
:指定容器。 -
/bin/bash
:启动容器内的 Bash 终端。
3. 示例
docker exec -it my-nginx /bin/bash
进入 my-nginx
容器的 Bash 终端。
(八)查看容器日志
1. 基本命令
docker logs <容器ID或名称>
2. 参数解释
-
docker logs
:查看容器的标准输出和错误日志。 -
-f
:实时跟踪日志输出。 -
--since
:从指定时间开始显示日志。 -
--until
:显示到指定时间为止的日志。 -
<容器ID或名称>
:指定容器。
3. 示例
docker logs my-nginx
(九)查看容器内部进程
1. 基本命令
docker top <容器ID或名称>
2. 参数解释
-
docker top
:查看容器内运行的进程。 -
<容器ID或名称>
:指定容器。
3. 示例
docker top my-nginx
(十)导出和导入容器
1. 导出容器
docker export <容器ID或名称> > <文件名>.tar
-
docker export
:将容器导出为 tar 文件。 -
<容器ID或名称>
:指定容器。 -
>
:重定向输出到文件。
2. 导入容器
docker import <文件名>.tar <镜像名>:<标签>
-
docker import
:从 tar 文件导入为镜像。 -
<文件名>.tar
:导出的容器文件。 -
<镜像名>:<标签>
:导入后的镜像名称和标签。
3. 示例
docker export my-nginx > my-nginx.tar
docker import my-nginx.tar my-nginx:latest
三、总结
Docker 容器操作是 Docker 使用的核心内容之一。通过掌握以下命令,可以高效地管理容器:
-
运行容器:
docker run
-
查看容器:
docker ps
-
停止容器:
docker stop
-
启动容器:
docker start
-
重启容器:
docker restart
-
删除容器:
docker rm
-
进入容器:
docker exec
-
查看日志:
docker logs
-
查看进程:
docker top
-
导出和导入容器:
docker export
和docker import
合理使用这些命令,可以帮助开发者和运维人员更好地管理容器化应用,确保应用的高效运行和维护。