Docker常用命令
一个搬砖的农民工 2024-06-14 17:37:06 阅读 55
目录
一、启动类命令二、镜像命令1、docker images2、docker search3、docker pull4、docker system df5、docker rmi6、什么是docker虚悬镜像? 三、容器命令1、docker run2、docker ps3、退出容器4、容器重启、停止、删除5、容器日志、进程、进入命令行6、容器复制、导入、导出7、查看容器IP补充
一、启动类命令
启动docker:systemctl start docker停止docker:systemctl stop docker重启docker:systemctl restart docker查看docker状态:systemctl status docker开机启动:systemctl enable docker查看docker概要信息:docker info查看docker总体帮助文档:docker --help查看docker命令命令帮助文档:docker 具体命令 --help二、镜像命令
1、docker images
作用:查看本地所有镜像
使用:docker images
-a 列出所有镜像-q 只显示镜像ID
标题说明:
repository:表示镜像的厂库源
tag:镜像版本号
image id:镜像ID
created:镜像创建时间
size:镜像大小
同一个仓库源可以有多个tag版本(如mysql 有5.7;8.0版本)。一般我们使用repository:tag 来定义不同镜像,如果不指定tag版本,默认最新版本。(例如使用ubuntu,docker默认使用ubuntu:latest镜像)
2、docker search
作用:查看远程仓库镜像
使用:docker search [镜像名称]
--limit [数量]:列出前几个
标题说明:
name:镜像名称
description:镜像说明
stars:点赞数
official:是否官方发布的
automated:是否自动构建
3、docker pull
作用:从远程仓库下载镜像到本地
使用:docker pull [镜像名称]:[tag版本号]
没有tag默认拉取最新的
4、docker system df
作用:查看镜像/容器/数据卷所占用空间
使用:docker system df
5、docker rmi
作用:删除镜像
使用:
删除单个:docker rmi -f [镜像ID]删除多个:docker rmi -f [镜像ID1] [镜像ID2]删除全部:docker rmi -f $(docker images -qa)
6、什么是docker虚悬镜像?
仓库名和标签都是none的情况,
三、容器命令
1、docker run
作用:新建、启动容器
语法:docker run [options] image [command][arg...]
options 常用说明:
--name=
:给容器指定一个名称,不使用则会随机分配一个名称-d
:后台运行容器并返回一个容器ID (后台守护式容器,部分容器会在启动后自杀,也就是启动未成功,如:ubuntu)-i
:以交互模式运行容器,通常和-t同时使用(前台交互式容器)-t
:为容器重新分配一伪输入终端,通常和-i同时使用(前台交互式容器)-P
:随机端口映射,大写P-p
:指定端口映射,小写p-v
:指定容器卷
启动交互式容器:
2、docker ps
作用:列出当前所有正在运行
的容器
语法:docker ps [options]
options常用说明:
-a
:列出当前所有正在运行的容器 + 历史上运行过得容器-l
:显示最近创建的容器-n
:显示最近n个创建的容器-q
:静默模式,只显示容器编号
3、退出容器
两种方式:
exit
:run进去容器,exit退出,容器停止ctrl+p+q
:run进去容器,ctrl+p+q退出,容器不停止
4、容器重启、停止、删除
docker start [容器ID]
:启动已经停止运行的容器docker restart [容器ID]
:重启容器docker stop [容器ID]
:停止正在运行的容器docker kill [容器ID]
:强制停止正在运行的容器docker rm [容器ID]
:删除已经停止的容器docker rm -f [容器ID]
:强制删除容器docker rm -f $(docker ps -aq)
:一次性删除多个容器(谨慎使用) 5、容器日志、进程、进入命令行
查看容器日志:docker logs [容器ID]
查看容器进程:docker ps -a | grep [名称]
例:docker ps -a | grep mysql ; docker ps -a | grep redis查看容器内运行的进程:docker top [容器ID]
查看容器内部细节:docker inspect [容器ID]
进入正在运行的容器并以命令行进行交互:
命令1:docker exec -it [容器ID] bash
命令2:docker attach [容器ID]
(推荐使用docker exec命令,因为docker attach命令使用exit退出,会导致容器停止,而docker exec命令不会)
6、容器复制、导入、导出
复制语法:docker cp [容器ID]:[容器内路径] [目的主机路径]
导出例:想把容器ID为8b6c3cb3470b,路径/bin下面的一个a.txt文件cp到主机目录/test下
docker cp 8b6c3cb3470b:/bin/a.txt /test
作用:export导出容器的内容作为一个tar文档文件[对应import命令]
语法:docker export [容器ID] > [文件名.tar]
导入
作用:import从tar包
中的内容创建一个新的文件系统再导入为镜像
[对应export]
语法:cat [文件名.tar] | docker import - 镜像用户/镜像名:镜像版本号
7、查看容器IP
其中 <container_name_or_id> 替换为容器名称或者id,可以通过 docker ps 查看容器名称和id
docker inspect -f '{ {range .NetworkSettings.Networks}}{ {.IPAddress}}{ {end}}' <container_name_or_id>
补充
1、根据容器生成一个新的镜像
语法:docker commit -m="[提交描述]" -a="[作者]" [容器ID] [镜像名]:[版本号]
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。