docker的常用命令

本文详细介绍了Docker的常用命令,包括帮助命令、镜像管理(查看、搜索、下载、删除、镜像仓库)、容器操作(新建、列出、退出、删除、启动/停止)以及其他常用命令(查看日志、容器进程、镜像元数据等),是Docker学习者的实用参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker的常用命令

帮助命令

docker version #查看版本信息

docker info #显示docker系统信息

docker (具体命令) --help #帮助命令

镜像命令

查看镜像

docker images #查看所有本地的主机上的镜像

-a,–all #列出所有镜像

-q,–quiet #只显示镜像的id

REPOSITORY 镜像仓库源

TAG 镜像的标签
在这里插入图片描述

镜像搜索

docker search 镜像名 #镜像搜索

docker search mysql #搜索mysql镜像

–filter=STARS=500 #搜索STARS大于500的镜像
在这里插入图片描述

镜像下载

docker pull 镜像名 [:tag] #镜像下载

docker pull mysql #下载mysql镜像,不指定版本直接下载最新版(latest)

docker pull mysql:5.7 #下载mysql5.7版本

docker拉取镜像采用分层下载(image的核心,联合文件系统)。之前已经下载的文件,若是与之后的镜像由重复的文件,不会重复下载。可以大大的节省空间。

在这里插入图片描述

镜像删除

docker rmi -f mysql #删除mysql镜像,也可以通过镜像id删除,只要把镜像名称换成镜像id,删除只会删除自己独有的文件,与其他镜像共有的文件不会删除。用空格来分隔多个要删除的容器

docker rmi -f $(docker images -aq) #删除全部镜像
在这里插入图片描述

镜像仓库

docker login : 登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub

docker logout : 登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub

-u 登录的用户名

-p 登录的密码

docker push #将本地的镜像上传到镜像仓库,要事先登录到镜像仓库

docker tag #标记本地镜像,将其归入某一仓库

docker tag nginx:latest web:n1 #创建web:n1镜像,即web仓库的n1镜像,该镜像与nginx:latest相同

docker build 命令用于使用 Dockerfile 创建镜像。

docker history : 查看指定镜像的创建历史。

docker save : 将指定镜像保存成 tar 归档文件。

docker load : 导入使用 docker save 命令导出的镜像。

docker import : 从归档文件中创建新的镜像。

容器命令

有了镜像才能创建容器

docker pull centos #拉取centos镜像

新建容器

docker run [参数] image #新建容器并启动

docker create [参数] image #新建容器不启动

#选项

–name=“name” 容器名字

-d 后台方式运行

-it 使用交互的方式运行,进入容器查看内容

-p 指定容器的端口(-p 8080)

-p 主机端口:容器端口

-p 容器端口

​ 容器端口

docker run -it centos /bin/bash #启动并进入指定容器cenos

这是精简版的centos,命令不完善

exit #退出
在这里插入图片描述

列出所有运行的容器

docker ps #列出当前正在运行的容器

-a 列出当前正在运行的容器+历史运行容器

-n=? 显示最近创建的?个容器

-q 只显示容器编号

-f 根据条件过滤显示的内容。

–format 指定返回值的模板文件。

-l 显示最近创建的容器。

–no-trunc 不截断输出。

-s 显示总的文件大小。

容器的状态:

created(已创建)
restarting(重启中)
running(运行中)
removing(迁移中)
paused(暂停)
exited(停止)
dead(死亡)
在这里插入图片描述

退出容器

exit #直接退出并停止

Ctrl + P + Q #容器不停止退出

删除容器

docker rm 容器id #删除指定容器,但不能删除正在运行的容器

docker rm -f $(docker ps -aq) #删除所有容器

docker ps -a -q | xargs docker rm #删除所有容器

启动和停止容器操作

docker start 容器id #启动容器

docker restart 容器id #重启容器

docker stop 容器id #停止正在运行的容器

docker kill 容器id #强制停止当前容器

常用的其他命令

后台启动容器后(docker run -d),查看运行的容器,发现容器停止了。这是因为,docker容器在后台运行后,必须在前台有进程,如果没有,就会自动停止(容器启动后发现自己没有提供服务,就会停止)

查看日志

docker logs -f -t --tail 容器

docker run -d centos /bin/sh -c “while true;do echo 666;sleep 1;done” #运行容器,并在其中运行一个shell,每隔一秒,输出一次666“,方便查看日志

docker logs -f -t --tail 10 7af3884a4cfc #查看后十行日志

容器中的进程

docker top 容器id #查看容器京城信息

docker pause 容器id #暂停容器中所有进程

docker unpause 容器id #恢复容器中的所有进程

docker events 容器id #从服务器获取实时时间

docker wait 容器id #阻塞容器运行知道容器停止,然后打印出他的退出码

查看镜像的元数据

docker inspect 容器id

进入当前正在运行的容器

#通常情况下容器都是使用后台方式执行,需要进入容器,进行一配置修改

docker exec -it 容器id /bin/bash

docker attach 容器id

#docker exec 进入容器后开启一个新的终端,可以在里面操作(常用)

#docker attach 进入容器正在执行的终端

归档

容器导出

docker export 容器id > 文件名#将文件系统最为一个tar归档文件导出到STDOUT

-o 将输入内容写到文件

容器导入生成镜像

docker import 文件名 指定镜像名称

cat 文件名 | docker import
在这里插入图片描述

从容器内拷贝文件到主机上

docker attach #容器id #进入容器

touch /home/test #在home下创建text

exit #退出

docker cp 容器id:/home/test /home #将容器内的home下的text文件复制到主机的/home下

ls /home #查看

容器的端口映射

docker port 容器id #查看容器的端口映射

从容器中创建一个新的镜像

docker commit [] 容器id []

docker commit -a “ph” -m “hp” xxxx aa:bb #从容器xxxx创建一个新的镜像,仓库源为aa标签为bb

退出

docker cp 容器id:/home/test /home #将容器内的home下的text文件复制到主机的/home下

ls /home #查看

容器的端口映射

docker port 容器id #查看容器的端口映射

从容器中创建一个新的镜像

docker commit [] 容器id []

docker commit -a “ph” -m “hp” xxxx aa:bb #从容器xxxx创建一个新的镜像,仓库源为aa标签为bb

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值