本篇文章我们将专注于学习启动和停止容器等基本操作。这些操作虽然简单,却是深入理解和有效使用Docker的基石。无论是初学者还是有经验的开发者,这一部分都将打下扎实的基础。
本文涉及的技术名词: ContainerImageDocker命令
从本文开始, 我们将开始介绍一些重要的Docker命令和选项,如启动、停止容器等基本操作。这些命令是我们与容器进行交互的基础,掌握它们将使你在使用Docker时更加得心应手。让我们开始探索这些核心命令,逐步建立起对Docker的深刻理解吧。
启动一个容器: container run
$ docker container run [option] <image> [command]
$ docker run [option] <image> [command]
查看容器列表: container ls
$ docker container ls [option]
$ docker ps [option]
option | 含义 | 应用场景 |
---|---|---|
-a``--all | 显示所有容器 | 查看包含未运行的容器 |
停止一个容器: container stop
$ docker container stop [option] <container>
$ docker stop [option] <container>
移除一个容器: container rm
$ docker container rm [option] <container>
$ docker rm [option] <container>
option | 含义 | 应用场景 |
---|---|---|
-f``--force | 强制一处容器 | 同时执行终止和删除操作, 强制删除容器(包含在运行的容器) |
以 Nginx 镜像为例
为了更好地理解如何操作容器,我们以 Nginx 镜像为例进行演示。Nginx 是一个流行的开源Web服务器,常用于反向代理和负载均衡。
首先,我们可以到 Docker Hub 上搜索 Nginx 镜像,并查看相关的镜像信息。Docker Hub 是一个存储和分发 Docker 镜像的中央仓库,你可以在这里找到官方的 Nginx 镜像及其详细说明,包括可用的标签、使用示例和配置选项。
一旦确定了要使用的 Nginx 镜像,接下来可以通过以下步骤来操作它:
- 拉取 Nginx 镜像:
- 使用以下命令从 Docker Hub 拉取 Nginx 镜像:
$ docker pull nginx
然后我们执行docker image ls
可以查看当前所有镜像列表, 找到仓库列是nginx的行
- 启动 Nginx 容器:
- 使用以下命令从 Nginx 镜像启动一个新容器:
$ docker container run -d --name mynginx --publish 8088:80 nginx
为了更直观的感受到启动镜像后的效果, 我们使用--publish将主机的 8088 端口映射到容器的 80 端口这样我们就可以通过浏览器访问
http://localhost:8088
来查看 Nginx 的运行情况.
此时我们访问http://localhost:8088/ 就可以看到如下结果:
Nginx 容器本身并不是一个虚拟服务器,而是在启动的容器(隔离区)内部运行了一个名为 Nginx 的Web服务器。
现在我们已经从镜像启动了一个容器,当前的情况可以通过以下示意图来表示:
查看运行中的容器
$ docker container ls [option]
运行 docker container run
命令后,保持运行该命令的终端标签页不变,接下来我们可以打开一个新的终端标签页使用docker container ls
来检查容器列表。
终止运行中的容器
$ docker container stop [option] <container>
查看所有容器
运行docker container ls --all
可以查看所有容器信息, 包含运行中和非运行中的
$ docker container ls --all
移除停止中的容器
运行docker container rm
可以移除停止中的容器
$ docker container rm [option] <container>
强制删除容器
运行docker container rm --force
可以强制移除容器, 包含运行中的
$ docker container rm --force <container>
ZSH Docker插件
Zsh 的 Docker 插件通过提供命令别名和快捷方式,帮助用户缩短和简化常用的 Docker 命令。使用该插件后,可以提高操作效率,减少输入量; 以下是使用 Zsh Docker 插件的常用别名及其中文描述表格:
别名 | 命令 | 描述 |
---|---|---|
dbl | docker build | 从 Dockerfile 构建镜像 |
dcin | docker container inspect | 显示一个或多个容器的详细信息 |
dcls | docker container ls | 列出所有正在运行的容器 |
dclsa | docker container ls -a | 列出所有运行中和已停止的容器 |
dib | docker image build | 从 Dockerfile 构建镜像(与 docker build 相同) |
dii | docker image inspect | 显示一个或多个镜像的详细信息 |
dils | docker image ls | 列出 Docker 镜像 |
dipu | docker image push | 将镜像或存储库推送到远程注册表 |
dirm | docker image rm | 删除一个或多个镜像 |
dit | docker image tag | 给特定镜像添加名称和标签 |
dlo | docker container logs | 获取 Docker 容器的日志 |
dnc | docker network create | 创建一个新网络 |
dncn | docker network connect | 将容器连接到网络 |
dndcn | docker network disconnect | 将容器从网络断开 |
dni | docker network inspect | 返回一个或多个网络的信息 |
dnls | docker network ls | 列出所有已知的网络,包括跨多主机的网络 |
dnrm | docker network rm | 删除一个或多个网络 |
dpo | docker container port | 列出容器的端口映射或特定映射 |
dpu | docker pull | 从注册表拉取镜像或存储库 |
总结
以下是常用的 Docker 容器管理命令总结:
- 启动容器:
docker container run
- 查看容器列表:
docker container ls
- 停止正在运行的容器:
docker container stop
- 删除已停止的容器:
docker container rm
- 强制删除正在运行的容器:
docker container rm --force
这些命令可以帮助我们有效管理 Docker 容器,从启动、查看状态到停止和删除,涵盖了容器的整个生命周期。