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

举报
wljslmz 发表于 2022/09/13 15:01:46 2022/09/13
【摘要】 Docker可以让开发人员、运维人员更容易使用容器创建、部署和运行应用程序。掌握一些必备的Docker命令对于使用Docker的工程师非常重要,那么今天笔者给大家整理了一份Docker的命令备忘单,希望大家可以好好保存,在使用的时候可以拿出来查阅使用。让我们直接开始! 一、Docker 容器命令 列出所有正在运行的容器docker ps还有两个同等作用的命令:docker container...

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的时候,遇到不会的可以返过来看看。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。