写点什么

Docker 小白的福音:50 条 Docker 命令清单,干就完了!

作者:wljslmz
  • 2022 年 7 月 20 日
  • 本文字数:2256 字

    阅读完需:约 7 分钟

Docker小白的福音:50条Docker命令清单,干就完了!

Docker 可以让开发人员、运维人员更容易使用容器创建、部署和运行应用程序。掌握一些必备的 Docker 命令对于使用 Docker 的工程师非常重要,那么今天笔者给大家整理了一份 Docker 的命令备忘单,希望大家可以好好保存,在使用的时候可以拿出来查阅使用。



让我们直接开始!

一、Docker 容器命令

列出所有正在运行的容器

docker ps
复制代码



还有两个同等作用的命令:


  • docker container ps

  • docker container ls

列出所有容器(包含所有状态)

docker ps -a
复制代码



docker ps -a中的-a-all的缩写。

列出所有正在运行的容器(带文件大小)

docker ps -s
复制代码



同等作用的命令:


  • docker container ls -s


docker ps -s中的-s-size的缩写,代表了容器在其可写层中写入的数据的大小,virtual 表示此容器的镜像使用的磁盘空间量。

列出正在运行的容器的 ID

docker ps -q
复制代码



同等作用的命令:


  • docker container ls -q


docker ps -q中的-q-quiet的缩写。

列出所有容器的 ID(包含所有状态)

docker ps -a -q
复制代码



上面的-a-q的参数可以合并:


docker ps -aq
复制代码


过滤容器列表

docker ps -f name=un
复制代码



docker ps -f name=un中的-f-filter的缩写。


根据状态过滤容器:


docker ps -a -f status=running
复制代码


二、Docker 创建容器

使用 Docker Image 创建一个新容器

docker create <image_name>
复制代码


例如我们创建 Nginx 镜像:


docker create nginx
复制代码



容器创建后,我们执行命令docker ps验证一下:


Docker Image 创建新容器带上名字

docker create --name <container_name> <image_name>
复制代码


例如我们创建一个名为 nginx-container 的镜像:


docker create --name nginx-container nginx
复制代码


然后我们再用docker ps -a验证一下镜像是否已经创建。


三、Docker 启动容器

启动 Docker 容器

我们可以使用 docker start 容器 ID 或名称来使用命令:


docker start <container_id or container_name>
复制代码


比如我们启动 nginx:


docker start nginx-contianer
复制代码


停止正在运行的 Docker 容器

和启动命令类似,我们可以使用 docker stop 容器 ID 或名称来使用命令:


docker stop <container_id or container_name>
复制代码


比如我们停止 nginx:


docker stop nginx-container
复制代码


重启 Docker 容器

和启动、停止命令类似,我们可以使用 docker restart 容器 ID 或名称来使用命令:


docker restart <container_id or container_name>
复制代码


比如我们重启 nginx:


暂停正在运行的容器

和启动、重启、停止命令类似,我们可以使用 docker pause 容器 ID 或名称来使用命令:


docker pause <container_id or container_name>
复制代码


比如我们暂停 nginx:


docker pause nginx-container
复制代码



取消暂停可以使用:


docker unpause <container_id or container_name>
复制代码


比如我们取消暂停 nginx:


docker unpause nginx-container
复制代码


四、Docker 镜像命令

列出所有 Docker 镜像

docker images
复制代码


列出所有 Docker 镜像 ID

docker images -q
复制代码


构建 Docker 镜像

docker build -t <image_name> <contenxt_dir>
复制代码


Docker 会尝试在 . 中找到一个名为的文件 Dockerfile,context_dir 然后它会使用该 Dockerfile 文件创建一个 Docker 映像。

构建 Docker 镜像并用标签区分

docker build . -t <image_name>:<tag or version>
复制代码

使用自定义命名的 Dockerfile 构建 Docker 映像

docker build -f <custom_docker_file_name> -t <image_name> .
复制代码

显示 Docker 映像的历史记录

docker history <imagename or imageid>
复制代码

重命名现有的 Docker 映像

docker tag <imagename> <newname>:<version>
复制代码


删除 Docker 镜像

docker rmi <image_name or image_id>
复制代码


强制删除 Docker 镜像

docker rmi -f <image_name or image_id>
复制代码

五、Docker 日志

获取 Docker 容器的日志

docker container logs <container_id or container_name>
复制代码

监控 Docker 容器日志

docker container logs -f <container_id or container_name>
复制代码


类似于 Linux 命令中的tail -f

获取容器日志的最后 n 行

docker container logs --tail n <container_id or container_name>
复制代码

六、Docker 网络命令

列出所有网络

docker network ls
复制代码


创建网络

docker network create --driver <driver-name> <bridge-name>
复制代码


将 Docker 容器连接到网络

docker network connect <network_id or network_name> <container_id or container_name>
复制代码


断开 Docker 容器与网络的连接

docker network disconnect <network_name_or_id> <container_name_or_id>
复制代码


删除网络

docker network rm <network_id or network_name>
复制代码


七、Docker 卷

列出卷

docker volume ls
复制代码

删除所有未使用的本地卷

docker volume prune
复制代码

卷的详细信息

[OPTIONS] VOLUME
复制代码

八、Docker Compose 命令

构建 docker compose 文件

docker-compose build
复制代码

运行 docker compose 文件

docker-compose up
复制代码

列出在 docker compose 文件中声明的 docker 镜像

docker-compose ls 
复制代码

启动已经使用 docker compose 文件创建的容器

docker-compose start
复制代码

在 docker-compose.yml 中运行其中一个应用程序

docker-compose run
复制代码

从 docker compose 中删除 docker 容器

docker-compose rm
复制代码

从 docker compose 检查 docker 容器状态

docker-compose ps
复制代码

九、docker hub 命令

在 docker hub 中搜索镜像

docker search search_word
复制代码

从 docker hub 下载镜像

docker pull user/image
复制代码

向 docker hub 进行身份验证

docker login
复制代码

将图像上传到 docker hub

docker push user/image
复制代码

十、批量清除/删除

停止所有容器

docker stop -f $(docker ps -a -q)
复制代码

删除所有容器

docker rm -f $(docker ps -a -q)
复制代码

删除所有镜像

docker rmi -f $(docker images -q)
复制代码

总结

Docker 现在已经使用的非常频繁了,今天笔者已经给大家列举了 50 个 Docker 常用命令,大家在使用 Docker 的时候,遇到不会的可以返过来看看。

发布于: 刚刚阅读数: 3
用户头像

wljslmz

关注

极致主义者,追求技术的路上,勇往直前! 2021.05.24 加入

订阅号:网络技术联盟站 个站:https://www.wljslmz.cn

评论

发布
暂无评论
Docker小白的福音:50条Docker命令清单,干就完了!_Docker_wljslmz_InfoQ写作社区